Skip to content

feat(agents): one agent list, two kinds, one verb for every agent CLI (agents 1.0.0, claude-code 1.7.0, devcontainer-cli 1.13.0) - #84

Merged
nabil-becker merged 2 commits into
mainfrom
feature/agent-kind-standard/1
Oct 27, 2026
Merged

nabil-becker merged 2 commits into
mainfrom
feature/agent-kind-standard/1

Conversation

@nabil-becker

Copy link
Copy Markdown
Owner

What

The agent model (agent-kind-standard, docs/proposals/agents.md, decided 2026-10-27): a new agents Feature 1.0.0 that reads a per-repository agent list (AGENTS_FILE, default .devcontainer/agents.yml) and gives one verb, task agents -- <name> (--resume, --new; agents:up, agents:list, agents:stop, agents:logs, agents:check). Two kinds: resident (runs in the background, start attaches) and on-demand (start opens a new session). Each CLI ships an adapter; claude-code 1.7.0 ships agent-adapter-claude (find by name and folder, act by id, never -c) and deprecates claude-host, claude-fleet and claude-host-pin ahead of 2.0. devcontainer-cli 1.13.0 adds devcontainer:agent and devcontainer:agent:list; devcontainer:claude and the fleet keep working, deprecated. This repository gets .devcontainer/agents.yml (host on-demand with --remote-control) and the Feature in its devhost. Migration for consumers: docs/migrations/agents.md. Also the records since #83.

Why

Session pins, the pin hook, claude-host's refusals and join wrappers (a consumer's join.sh) were scripting around a missing concept: the agent. One list and two kinds make starting any agent the same whatever its CLI, and replace the requested CLAUDE_HOST_JOIN.

Checklist

New Feature? Follow "Adding a Feature" in CONTRIBUTING.md first (CI matrices, test/_global, README row).

  • Every commit is signed off (Signed-off-by:, DCO) - automatic after task repo:setup
  • version bumped in src/<id>/devcontainer-feature.json (semver): agents 1.0.0, claude-code 1.7.0, devcontainer-cli 1.13.0
  • Downloads remain checksum-verified; nothing unverified is piped into a shell (no downloads added)
  • install.sh is idempotent and does not assume a remoteUser
  • Tests updated (test/<id>/test.sh, scenarios.json) and task test FEATURE=<id> passes: unit tests pass (agents 116, adapter 35, live-session 181, agent task 13, cloud-folder 83 + 136); the Docker scenarios have not run (no daemon in the devhost), CI is their first run
  • taskfile.yml present and registered via installTaskfile (new Features)
  • task lint passes (in a clean worktree)
  • NOTES.md updated if behaviour or options changed, and task docs run so src/<id>/README.md is current

Still for the Operator on the workstation: whether Remote Control reaches a background session (the host becomes resident then) and what comes back after a rebuild.

🤖 Generated with Claude Code

devhost agent and others added 2 commits October 27, 2026 19:34
… (agents 1.0.0, claude-code 1.7.0, devcontainer-cli 1.13.0)

agent-kind-standard, slices 2 and 3 of the decided proposal (docs/proposals/agents.md):

- New Feature agents 1.0.0: reads the agent list (AGENTS_FILE, default
  .devcontainer/agents.yml); task agents -- <name> [--resume|--new],
  agents:up/list/stop/logs/check; residents attach, on-demand agents open a new
  session; adapters per CLI with exit 3 for "not supported" and fallbacks.
- claude-code 1.7.0: agent-adapter-claude (find by name and folder, act by id,
  never -c); claude-host, claude-fleet and claude-host-pin print a deprecation
  line ahead of their removal in 2.0.
- devcontainer-cli 1.13.0: devcontainer:agent and devcontainer:agent:list;
  devcontainer:claude and the fleet keep working, deprecated.
- This repository: .devcontainer/agents.yml (host on-demand with
  --remote-control), the agents Feature in the devhost.
- Lexicon and ontology: resident agent, on-demand agent, agent list.
- docs/migrations/agents.md for consuming repositories.

Co-Authored-By: Claude Opus 5.5 <claude-opus-5-5@noreply.invalid>
Signed-off-by: devhost agent <devhost-agent@noreply.invalid>
Backlog and ledger since #83 (cloud-folder-feature, agent-kind-standard);
cloud-folder-build reworded: slices 1 and 2 released, slice 3 remains.

Co-Authored-By: Claude Opus 5.5 <claude-opus-5-5@noreply.invalid>
Signed-off-by: devhost agent <devhost-agent@noreply.invalid>
@nabil-becker
nabil-becker merged commit 8fc69a3 into main Oct 27, 2026
77 checks passed
@nabil-becker
nabil-becker deleted the feature/agent-kind-standard/1 branch October 27, 2026 19:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant