Skip to content

agentify: install the autonomous-repo feedback loop#352

Closed
jiashuoz wants to merge 1 commit into
mainfrom
agentify/install-autonomous-repo-loop
Closed

agentify: install the autonomous-repo feedback loop#352
jiashuoz wants to merge 1 commit into
mainfrom
agentify/install-autonomous-repo-loop

Conversation

@jiashuoz

@jiashuoz jiashuoz commented Jul 1, 2026

Copy link
Copy Markdown
Member

Installs the autonomous-repo feedback loop into e2a via /agentify. e2a is the framework's first adopter. This PR is the human gate on the install itself — review the scaffolded files, then merge.

What each file does

autonomous-repo.config.yml — the single product-owned config. Everything else reads from it (repo, marker, labels, comms mailbox, models, fix gate). Key choices:

  • fix_gate.mode: auto — triage auto-applies agent-fix for confident clean fixes → the fix lane auto-opens a PR. Merge is still the only ship gate (auto-open, never auto-merge).
  • always_hitl tuned for e2a's crown jewels — email-auth (SPF/DKIM/DMARC), HMAC header/webhook signing, SMTP relay/outbound, the OpenAPI/generated-SDK contract, and domain identity. Items touching these always take the email-approval path even in auto mode.
  • comms via e2a: support@e2a.dev (intake + acks + approvals); approver jszjosh@gmail.com.

.claude/skills/autonomous-repo/ — the runtime skill the lanes execute (triage / comms / fix / state-machine + email templates). .gitignore was updated to track only this subtree (the lanes read it in CI); other local .claude/ files stay ignored.

.github/workflows/feedback-{triage,comms,fix,released}.yml — the four lanes. Each no-ops loudly until its secrets exist, so merging this PR does not start anything.

scripts/

  • ticket_card.sh, comms_send.sh, released_markers.sh — lane helpers (all pass _selftest).
  • agentify-verify-setup.sh — fix-lane bootstrap: boots Postgres (:5433) + the migrated e2a_test DB + Mailpit so the fix agent verifies against a real running stack, not just a compile.

tools/submit-feedback-mcp/ — addon: a submit_feedback MCP tool that email-bridges into the support mailbox. Additive; the loop runs without it. Setup in AGENTIFY-ADDON-SETUP.md.

Not done here (one-time human setup — required before lanes run)

Labels are already created. Everything below needs your hands (auth is never run by the skill) — see references/setup-checklist.md:

  1. GitHub App (bot identity): Issues/PRs/Contents read-write, no Workflows:write; install on repo; set github_app_login (currently e2a-support-bot[bot]confirm/replace); add secrets AUTOREPO_APP_ID, AUTOREPO_APP_PRIVATE_KEY.
  2. e2a support agent: create the support@e2a.dev agent (verified domain) + an agent-scoped API key → secret E2A_API_KEY; run with screening/HITL off.
  3. Model token: claude setup-token → secret CLAUDE_CODE_OAUTH_TOKEN (or ANTHROPIC_API_KEY).
  4. Repo settings: enable Actions; branch protection on main requiring the reviewer's review — load-bearing, the bot must not bypass it; (recommended) CODEOWNERS on autonomous-repo.config.yml + .github/.

Pause switch: set repo variable AUTOREPO_LANES_PAUSED=true to halt all lanes.

🤖 Generated with Claude Code

Scaffold the autonomous-repo framework into e2a via /agentify: feedback in
→ triaged GitHub issue → human-gated fix PR → filer notified. e2a is the
framework's first adopter.

What lands:
- autonomous-repo.config.yml — the one product-owned config (repo, marker,
  labels, e2a comms mailbox, fix gate). Fix gate: auto (auto-OPEN PRs; merge
  stays the only ship gate). always_hitl tuned for e2a crown jewels:
  email-auth (SPF/DKIM), HMAC signing, SMTP relay, OpenAPI/SDK contract,
  identity.
- .claude/skills/autonomous-repo/ — the runtime skill the lanes execute.
- .github/workflows/feedback-{triage,comms,fix,released}.yml — the four
  lanes. Each no-ops loudly until its secrets exist.
- scripts/{ticket_card,comms_send,released_markers}.sh — lane helpers.
- scripts/agentify-verify-setup.sh — fix-lane bootstrap: boots Postgres
  (:5433) + the migrated e2a_test DB + Mailpit so fixes verify against a
  real stack.
- tools/submit-feedback-mcp/ — addon: a submit_feedback MCP tool bridging
  into the support mailbox.
- .gitignore — un-ignore .claude/skills/autonomous-repo/ (the lanes read it
  in CI) while keeping other local .claude/ files ignored.

Lanes stay dormant until the one-time identity/secret setup (GitHub App,
e2a support@ agent + API key, repo secrets, branch protection) — see the
setup checklist. Not wired to run on merge alone.

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

jiashuoz commented Jul 1, 2026

Copy link
Copy Markdown
Member Author

Reverting the agentify install — closing without merge and removing the branch.

@jiashuoz jiashuoz closed this Jul 1, 2026
@jiashuoz jiashuoz deleted the agentify/install-autonomous-repo-loop branch July 1, 2026 03:18
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