docs: add docker-agent v1 skill (SKILL.md + references) - #4112
Draft
aheritier wants to merge 2 commits into
Draft
Conversation
Authors a SKILL.md + references/ bundle at .agents/skills/docker-agent/ covering both agent-config authoring (against agent-schema.json) and CLI operation (all subcommands, serve modes, debug tools). SKILL.md stays lean (~120 lines, well under the ~500-line/~5k-token budget) and points into references/cli.md, references/config.md, and references/examples.md for exhaustive detail. The frontmatter description is a single physical line (pkg/skills/ frontmatter.go's line-based parser silently mangles YAML-folded multi-line descriptions), ~410 chars, front-loaded with trigger keywords — sized to survive a shared per-installation skill-listing budget that trims least-invoked skills' descriptions first, not just the schema's 1024-char validity ceiling. Every command, flag, and mutual-exclusion claim was verified against the built binary's --help output and cmd/root/*.go; no install command, embed wiring, or CI drift gate is included in this pass (separately scoped). Also fixes .gitignore's unanchored 'docker-agent' pattern, which matched this skill's own directory at any depth (its neighbours are all anchored with a leading slash). Assisted-By: docker-agent
aheritier
marked this pull request as ready for review
September 2, 2026 09:25
trungutt
previously approved these changes
Sep 2, 2026
Corrects the location and framing of the docker-agent v1 skill after review feedback: the skill is for END USERS in OTHER projects/harnesses to install so their agent can use docker-agent as an external tool (authoring configs, running/delegating to agents, exposing them over MCP/A2A) — not a docker-agent-development skill. - Relocate the source-of-truth from .agents/skills/docker-agent/ (this repo's own dev-skill namespace, only self-discovered when docker-agent runs from inside its own source tree) to skill/docker-agent/, with the non-installed editorial policy moved up to skill/AGENTS.md so the whole skill/docker-agent/ directory is exactly the installable payload. - Add a prominent 'Delegating to another agent' section to SKILL.md (the concrete use case that motivated this correction: one agent invoking docker-agent run --exec, or serve mcp/a2a, to delegate to another) plus a full worked delegation flow in references/examples.md. - Purge every repo-relative assumption from installed content: docs/* and agent-schema.json become public URLs; examples/*.yaml references become self-contained, copyable inline YAML (an installed reader has no examples/ directory); drop the pkg/config/v0..vN and pkg/creator/instructions.txt paragraphs, which are docker-agent *development* facts irrelevant to an end user. - Fix a factual error caught along the way while rewriting the eval example: eval fixtures are recorded-session JSON saved via the TUI's /eval slash command, not the cassette file 'run --record' produces. - Replace the obsolete in-repo pkg/skills.Load dogfood check with an install-simulation test: copy skill/docker-agent/ into an unrelated scratch directory's .agents/skills/ and confirm discovery from there. references/cli.md and references/config.md keep their (still-accurate) verified command/flag/schema detail; only the repo-relative framing changed. Re-verified the full command/flag cross-check, every public URL, and re-ran task build/test/lint (all green) after the rewrite. Assisted-By: docker-agent
trungutt
approved these changes
Sep 2, 2026
aheritier
marked this pull request as draft
September 2, 2026 15:31
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.
🤖 Automated implementer agent — this comment was posted by the implementer bot from Docker Agentic Platform, not by a human developer
Adds the v1
docker-agentAgent Skill bundle:SKILL.md+references/{cli,config,examples}.mdunderskill/docker-agent/, so an agent in any other project or harness can install it to author docker-agent configs and operate the docker-agent CLI as an external tool — including delegating to another agent (this repo's own contributor skills are unaffected:.agents/skills/{bump-config-version,bump-go-dependencies,triage-prs}still live where they always did).Reworked after review feedback: the skill initially lived at
.agents/skills/docker-agent/— this repo's own dev-skill namespace, self-discovered only when docker-agent runs from inside its own source tree. That read as "how to develop docker-agent" instead of "how to use it", and missed the actual goal: an end user in some other project installing this so their agent can delegate to / operatedocker-agent(e.g.docker-agent run <config> --execto run a sub-agent,serve mcp/serve a2ato expose one for delegation). Fixed by:skill/docker-agent/at the repo root, with the non-installed editorial policy (AGENTS.md) moved one level up toskill/AGENTS.md— soskill/docker-agent/is exactly the installable payload, nothing to exclude.examples/*.yaml,docs/*,pkg/*) remain in installed content — converted to public URLs or self-contained inline YAML an installed reader can copy directly with no repo files on disk.references/examples.md.Verified, not guessed, throughout both passes: every command, flag, hidden flag, and mutual-exclusion claim checked against the built binary's
--helpoutput andcmd/root/*.go; every config claim againstagent-schema.json; every public URL against the docs' owncanonical:frontmatter; the delegation example'srun --jsonNDJSON shape andserve mcp --httprequirement empirically confirmed by running the built binary against real cassette fixtures (two bugs caught this way in review and fixed before this push — see review history below).Frontmatter safety:
descriptionis a single physical line (~344 chars, front-loaded with delegation/trigger keywords) —pkg/skills/frontmatter.gois a line-based parser that silently mangles a YAML-folded multi-line description.SKILL.mdis ~160 lines, well under the ~500-line/~5k-token budget.Also included: a one-line
.gitignorefix — the existingdocker-agentignore pattern was unanchored and matched the skill's own directory at any depth (its neighbours,/cagent,/docker-mcp-*, are all anchored); anchored it to/docker-agent.Went through two full review rounds with the
reviewersub-agent at the original location (fixed a mischaracterized__askpassdescription and afallback/title_modelgrouping error) and two more after the relocation/reframing (fixed a missing--httpflag and a brokenjqextraction example in the delegation flow, both caught by actually running the built binary). Final verdict: approve.Testing:
task build,task test(green except the pre-existing, unrelatedpkg/rag/treesitterCGO/gcc failure, confirmed to reproduce identically on a cleanorigin/maincheckout),task lint(0 issues). Verified install-simulation: copyingskill/docker-agent/into an unrelated scratch directory's.agents/skills/and runningpkg/skills.Loadfrom there discovers the skill with a correctly-parsed name and description.