Skip to content

feat: add the automated-ai-engineer plugin (agents+skills bundle per ADR-0002)#63

Open
devantler wants to merge 7 commits into
mainfrom
claude/automated-ai-engineer-plugin
Open

feat: add the automated-ai-engineer plugin (agents+skills bundle per ADR-0002)#63
devantler wants to merge 7 commits into
mainfrom
claude/automated-ai-engineer-plugin

Conversation

@devantler

Copy link
Copy Markdown
Contributor

🤖 Generated by the Daily AI Engineer

Why

The marketplace roadmap wants a flagship bundle proving plugins are not skills-only, and the Automated AI Engineer role is fully designed (ADR-0002) with its three skills already published in agent-skills — only the plugin assembly was missing.

What

Adds the automated-ai-engineer plugin: two generalized agent definitions (the run-loop engineer and its read-only surveyor) plus the three engineering skills bundled from agent-skills with provenance, with both marketplace manifests and the catalogue row updated in parity. Consumers configure it via the five AGENTS.md contract sections named in ADR-0002.

Part of #51 (child 2 — completes it together with agent-skills#62; remaining child 3 = the monorepo consuming the plugin).

…ADR-0002)

Two generalized agent definitions (run-loop engineer + read-only surveyor)
plus the three engineering skills bundled from agent-skills with gh-skill
provenance; both marketplace manifests and the catalogue row updated in
parity. Consumer contract: the five named AGENTS.md sections from ADR-0002 D2.

Part of #51 (child 2, plugin-assembly half; skills half delivered via
agent-skills#62)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4051de2dad

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/automated-ai-engineer/agents/portfolio-surveyor.md
Comment thread plugins/automated-ai-engineer/README.md
Comment thread plugins/automated-ai-engineer/README.md Outdated
Comment thread plugins/automated-ai-engineer/agents/automated-ai-engineer.md Outdated
Comment thread plugins/automated-ai-engineer/skills/self-improvement/SKILL.md Outdated
…cope the creation record

- README gains a Runtime guard note (enforce the surveyor's read-only
  boundary in the runtime permission layer) and the contract now names the
  deployment's AI-disclosure line and per-product feature-flag mechanism
- creation-record hands-off scoped to maintainer-login PRs; trusted bot PRs
  stay Trust-gate-driven

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e60096d37d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/automated-ai-engineer/agents/automated-ai-engineer.md
…am repo

The self-improvement routing lumped 'this very skill' with 'the plugin or
skills library', letting a skill-content fix land on a bundled copy instead
of the skill's canonical metadata.github-repo upstream. Split the bullet: a
bundled skill's own content routes to that skill's upstream (the plugin
re-bundles from there); only the role agents and plugin wiring route to the
plugin repo. Matches the AGENTS.md bundled-skills-from-upstream rule.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bde7cb60ee

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/automated-ai-engineer/README.md Outdated
Comment thread plugins/automated-ai-engineer/agents/automated-ai-engineer.md Outdated
Comment thread plugins/automated-ai-engineer/agents/portfolio-surveyor.md Outdated
…unverified-PR fire

Portfolio-map card now names the required feature-flag mechanism (the
bundled product-engineering skill reads it); surveyor treats a broken
ownership-unverified PR as fire since it is memory-blind and cannot
confirm own-ness.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: faa5151267

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/automated-ai-engineer/README.md Outdated
Comment thread plugins/automated-ai-engineer/agents/portfolio-surveyor.md
Comment thread plugins/automated-ai-engineer/agents/automated-ai-engineer.md
VS Code discovers plugin-bundled agents on install (they appear in chat
alongside locally-defined ones per the official agent-plugins docs), so the
manual .github/agents copy step was stale. Correct the delivery note.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@codex review

Addressed your review at head 7b5f025: fixed the stale VS Code copy step (verified plugin-bundled agents auto-load in VS Code), and refuted the surveyor-Bash and skills:-frontmatter points with reasoning on their threads (documented runtime-guard limitation / Claude-native preload hint that stays cross-tool-available via bundling + in-body skill naming).

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7b5f0255ae

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread README.md
Comment thread plugins/automated-ai-engineer/agents/automated-ai-engineer.md
Comment thread plugins/automated-ai-engineer/agents/automated-ai-engineer.md Outdated
Plugin agents are exposed under a plugin-scoped name in some runtimes
(e.g. automated-ai-engineer:portfolio-surveyor in Claude Code); note
that so the delegation instruction stays portable across tools.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@coderabbitai review

Requesting a review from CodeRabbit for the green-review gate at head 0f2903d. The codex lane has produced five COMMENTED rounds on this PR that re-raise the same three structural findings — the .agent.md extension (source-verified refutable: GitHub's custom-agents reference documents plain .md as supported), the Bash tool on the read-only surveyor (mirrors the canonical read-only surveyor; boundary enforced by the documented runtime-guard layer), and the Claude-native skills: frontmatter (skills also load cross-tool via bundling + in-body naming) — so it has not converged to a green artifact. Falling back to the other reviewer lane per the one-tool-at-a-time policy.

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

@devantler Got it — I'll review the PR at head 0f2903d now.

✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Adds the automated-ai-engineer plugin and registers it in both marketplace manifests. The plugin includes two agents, three skills, metadata, and documentation describing consumer AGENTS.md contracts, trust and safety rules, portfolio maintenance, product engineering, and self-improvement workflows. README content documents the plugin’s bundled resources and deployment requirements.

Possibly related issues

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly summarizes the main change: adding the automated-ai-engineer plugin bundle.
Description check ✅ Passed The description matches the changeset by explaining the plugin assembly, agents, skills, and marketplace updates.

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@plugins/automated-ai-engineer/agents/portfolio-surveyor.md`:
- Around line 83-95: Update the survey contract in the portfolio-surveyor
instructions so any failed mandatory PR enumeration, pagination, or
review-surface query marks the survey incomplete and forces nothing_on_fire:
false. Ensure affected repositories or PRs are not classified as clean, while
retaining a concise failure note under the relevant repository and leaving the
orchestrator to decide follow-up actions.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: cabc34cd-59e1-46d7-8d8c-5a6efa3bab1e

📥 Commits

Reviewing files that changed from the base of the PR and between e4186bc and 0f2903d.

📒 Files selected for processing (10)
  • .claude-plugin/marketplace.json
  • .github/plugin/marketplace.json
  • README.md
  • plugins/automated-ai-engineer/README.md
  • plugins/automated-ai-engineer/agents/automated-ai-engineer.md
  • plugins/automated-ai-engineer/agents/portfolio-surveyor.md
  • plugins/automated-ai-engineer/plugin.json
  • plugins/automated-ai-engineer/skills/portfolio-maintenance/SKILL.md
  • plugins/automated-ai-engineer/skills/product-engineering/SKILL.md
  • plugins/automated-ai-engineer/skills/self-improvement/SKILL.md
📜 Review details
🧰 Additional context used
📓 Path-based instructions (6)
{.github/plugin,.claude-plugin}/marketplace.json

📄 CodeRabbit inference engine (AGENTS.md)

Keep .github/plugin/marketplace.json and .claude-plugin/marketplace.json byte-for-byte equivalent modulo key order; update both whenever the plugin set changes.

Files:

  • .claude-plugin/marketplace.json
  • .github/plugin/marketplace.json
{.github/plugin/marketplace.json,.claude-plugin/marketplace.json,plugins/*/plugin.json}

📄 CodeRabbit inference engine (AGENTS.md)

Manifest entries must match the corresponding plugins/<name>/plugin.json, including name, description, version, and relative source ./plugins/<name>; orphan plugin directories are forbidden.

Files:

  • .claude-plugin/marketplace.json
  • plugins/automated-ai-engineer/plugin.json
  • .github/plugin/marketplace.json
plugins/*/plugin.json

📄 CodeRabbit inference engine (AGENTS.md)

plugins/*/plugin.json: Each plugin must have a plugin.json with a kebab-case name matching ^[a-z0-9-]+$, a non-empty description, and a non-empty version.
A plugin manifest must not use plain-string skills or agents component paths; resources are auto-discovered, and any explicitly provided paths must be arrays.
Every plugin must declare at least one resource through an on-disk skills/ directory, .mcp.json, or agents/ directory.

Files:

  • plugins/automated-ai-engineer/plugin.json
README.md

📄 CodeRabbit inference engine (AGENTS.md)

Keep the README plugin table synchronized with the manifests and filesystem; every plugin must have a row and each Resources value must match bundled resources.

Files:

  • README.md
plugins/*/agents/*.md

📄 CodeRabbit inference engine (AGENTS.md)

Custom agent files must have YAML frontmatter containing non-empty name and description fields.

Files:

  • plugins/automated-ai-engineer/agents/portfolio-surveyor.md
  • plugins/automated-ai-engineer/agents/automated-ai-engineer.md
plugins/*/skills/*/SKILL.md

📄 CodeRabbit inference engine (AGENTS.md)

plugins/*/skills/*/SKILL.md: Every bundled SKILL.md must conform to the agentskills.io specification.
Never hand-edit a bundled SKILL.md to diverge from upstream; update the skill in its own upstream repository instead.
Every bundled SKILL.md must contain a non-empty metadata.github-repo provenance field.

Files:

  • plugins/automated-ai-engineer/skills/self-improvement/SKILL.md
  • plugins/automated-ai-engineer/skills/product-engineering/SKILL.md
  • plugins/automated-ai-engineer/skills/portfolio-maintenance/SKILL.md
🧠 Learnings (1)
📚 Learning: 2026-06-28T12:17:58.373Z
Learnt from: devantler
Repo: devantler-tech/agent-plugins PR: 36
File: plugins/engineering-practices/skills/conventional-release/SKILL.md:57-59
Timestamp: 2026-06-28T12:17:58.373Z
Learning: Bundled skill artifact files at `plugins/*/skills/*/SKILL.md` are synced from upstream and must not be hand-edited locally. If you need to change a skill, update the corresponding upstream skill repository first, then pull the updated artifact into this repo using the `update-agent-skills` workflow (and review the resulting diff for the synced contents).

Applied to files:

  • plugins/automated-ai-engineer/skills/self-improvement/SKILL.md
  • plugins/automated-ai-engineer/skills/product-engineering/SKILL.md
  • plugins/automated-ai-engineer/skills/portfolio-maintenance/SKILL.md
🪛 LanguageTool
plugins/automated-ai-engineer/README.md

[uncategorized] ~49-~49: The official name of this software platform is spelled with a capital “H”.
Context: ...ally defined ones). No manual copy into .github/agents is required.

(GITHUB)

plugins/automated-ai-engineer/agents/portfolio-surveyor.md

[style] ~48-~48: Consider an alternative for the overused word “exactly”.
Context: ...merge-gated or not. Trusted authors are exactly the logins the Trust gate section n...

(EXACTLY_PRECISELY)

plugins/automated-ai-engineer/skills/product-engineering/SKILL.md

[style] ~72-~72: Consider an alternative for the overused word “exactly”.
Context: ...s the decision as a draft PR** (that is exactly where the maintainer redirects what ...

(EXACTLY_PRECISELY)

🪛 markdownlint-cli2 (0.23.0)
plugins/automated-ai-engineer/agents/portfolio-surveyor.md

[warning] 15-15: First line in a file should be a top-level heading

(MD041, first-line-heading, first-line-h1)

plugins/automated-ai-engineer/agents/automated-ai-engineer.md

[warning] 22-22: First line in a file should be a top-level heading

(MD041, first-line-heading, first-line-h1)

plugins/automated-ai-engineer/skills/portfolio-maintenance/SKILL.md

[warning] 137-137: Ordered list item prefix
Expected: 1; Actual: 7; Style: 1/2/3

(MD029, ol-prefix)


[warning] 141-141: Ordered list item prefix
Expected: 2; Actual: 8; Style: 1/2/3

(MD029, ol-prefix)


[warning] 143-143: Ordered list item prefix
Expected: 3; Actual: 9; Style: 1/2/3

(MD029, ol-prefix)


[warning] 145-145: Ordered list item prefix
Expected: 4; Actual: 10; Style: 1/2/3

(MD029, ol-prefix)


[warning] 147-147: Ordered list item prefix
Expected: 5; Actual: 11; Style: 1/2/3

(MD029, ol-prefix)

🪛 SkillSpector (2.3.11)
plugins/automated-ai-engineer/skills/product-engineering/SKILL.md

[warning] 94: [EA2] Autonomous Decision Making: Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Remediation: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.

(Excessive Agency (EA2))

🔇 Additional comments (12)
plugins/automated-ai-engineer/agents/portfolio-surveyor.md (1)

1-13: LGTM!

Also applies to: 15-82

plugins/automated-ai-engineer/skills/portfolio-maintenance/SKILL.md (1)

1-207: LGTM!

plugins/automated-ai-engineer/skills/product-engineering/SKILL.md (1)

1-170: LGTM!

plugins/automated-ai-engineer/skills/self-improvement/SKILL.md (1)

1-98: LGTM!

plugins/automated-ai-engineer/README.md (3)

49-49: False-positive capitalization flag.

The linter flags "github" for capitalization, but this instance is the literal directory name .github/agents, not the brand name — no change needed.


1-44: LGTM!


45-50: 📐 Maintainability & Code Quality | ⚡ Quick win

Root README's "Same delivery rules" contradicts the plugin's own VS Code auto-discovery claim.

plugins/automated-ai-engineer/README.md states that "Installing the plugin makes both bundled agents available automatically — Claude Code, Copilot CLI, and VS Code all discover the plugin's agents/ directory on install" and that no manual copy is required, while the root README.md's new paragraph says "Same delivery rules" as the prior entries (flux-troubleshooter, vibe-coding-companion), which explicitly instruct users to manually copy the agent into .github/agents/<name>.agent.md for VS Code. These two claims can't both be true for the same plugin.

  • plugins/automated-ai-engineer/README.md#L45-L50: keep this claim only if VS Code's current agent-plugin auto-discovery has been verified for this repo's target VS Code version; otherwise revert to the manual-copy instruction used by other plugins.
  • README.md#L119-L127: don't say "Same delivery rules" for a plugin whose own docs claim a different (no-copy) VS Code delivery path — spell out the actual VS Code behavior for this plugin instead of deferring to the older pattern.
.claude-plugin/marketplace.json (1)

53-58: LGTM!

.github/plugin/marketplace.json (1)

53-58: LGTM!

plugins/automated-ai-engineer/plugin.json (1)

1-19: LGTM!

README.md (1)

22-22: LGTM!

plugins/automated-ai-engineer/agents/automated-ai-engineer.md (1)

1-101: LGTM!

Comment thread plugins/automated-ai-engineer/agents/portfolio-surveyor.md Outdated
An incomplete survey (a failed PR-enumeration, pagination, or review-surface
query) must not read as a clean portfolio. Force nothing_on_fire:false and
forbid clean/MERGE-READY/REVIEW-READY classification for affected repos/PRs,
matching the fail-closed requirement in the portfolio-maintenance SKILL.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
gh pr view 63 --repo devantler-tech/agent-plugins --json headRefOid,commits --jq '.headRefOid'

Length of output: 286


@devantler Got it — the PR head has moved to 1e8f46c4 since the last review at 0f2903d, so I'll review the new changes now.

✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@devantler devantler marked this pull request as ready for review July 14, 2026 05:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant