feat: multi-agent mount support with validation#206
Open
Conversation
1554beb to
a268483
Compare
71d77ae to
a2736e0
Compare
a268483 to
4dd10af
Compare
35422e8 to
59e7905
Compare
4dd10af to
1f917b0
Compare
59e7905 to
4ef461d
Compare
1f917b0 to
0a9613e
Compare
4ef461d to
2ee01a3
Compare
0a9613e to
6f0ff3e
Compare
0f843ed to
5508434
Compare
6f0ff3e to
e062e13
Compare
74dcea2 to
437e312
Compare
dines-rl
approved these changes
Apr 23, 2026
Revert coverage threshold and forceExit changes to jest configs. Remove unnecessary `as any` / narrowing casts for Agent.source and StorageObjectView fields that are already properly typed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move sanitizeMountSegment, repoBasename, adjustFileExtension, getDefaultAgentMountPath, and getDefaultObjectMountPath to src/utils/mount.ts. Both CLI (commands/devbox/create.ts) and TUI (components/DevboxCreatePage.tsx) now import from the shared module. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Use Promise.all instead of sequential for-of loops when resolving multiple --agent and --object CLI flags, reducing latency. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
New components added without corresponding tests brought global coverage just below the 30% threshold. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add [editing] label on agent/object mount items when inline path editing is active, making the sub-mode visually obvious - Add 35 unit tests for mount.ts covering sanitizeMountSegment, adjustFileExtension, repoBasename, getDefaultAgentMountPath, and getDefaultObjectMountPath Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ort IDs Replace the duplicate inline formatBytes with the existing formatFileSize export. Fix getDefaultObjectMountPath to extract the part after the last underscore before slicing, avoiding confusing paths for short object IDs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
c4d15ba to
583cabf
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
--objectCLI flag for mounting objects on devbox creation (format:object_idorobject_id:/mount/path)--objectand--agent(git/object agents) — smart defaults are generated matching runloop-fe behavior (sanitized name, archive extension stripping, repo basename for git agents)[e]key for git/object agents and object mountsobject_)Note: Basic agent picker and single-agent DevboxCreatePage support were introduced by #209. This PR replaces the single-agent architecture with multi-agent + object mount support.
Test plan
rli devbox create --agent my-git-agentauto-generates mount path from repo basenamerli devbox create --object obj_123auto-generates mount path from object namerli devbox create --object obj_123:/custom/pathuses explicit pathrli devbox create --agent a1 --agent a2 --object obj1mounts multiple agents and objects[e]🤖 Generated with Claude Code