원클릭으로
backlog
Actionable improvement items derived from experience and retrospectives. Items live in .agents/backlog/.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Actionable improvement items derived from experience and retrospectives. Items live in .agents/backlog/.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use when the user invokes /act on a PR/MR or /act <context> with context ∈ {pr, plan, backlog, harvest}. Resolves threads in product code (or posts a substantive in-thread reply), commits, then closes threads. Never resolve-only. Harvest (collecting threads) lives in /harvest; triage (priority / grouping / wontfix) lives in /backlog. /act is the fix loop, not the collect or triage.
Domain-agnostic AI-native scenario runner (e2e-agent CLI). Scenarios are markdown prompts; evidence is written by the CLI. Use when the user invokes /e2e or asks to run a live scenario test and collect evidence under .e2e/results/. Agents use only e2e-agent commands — never import internal framework modules.
Use when the user invokes /harvest on a PR or runs `harvest:pr` / `harvest:batch`. Collects unresolved PR review threads into .agents/review-debt/harvests/*.jsonl on PR merge (or via workflow_dispatch). Does not run during /act and does not open a harvest bot PR — new files are append-only paths pushed straight to main. Downstream consumers: /backlog (triage), /act (batch fix). Harvest is a one-way collect, not a fix loop.
Unified agent memory. Use /remember to store facts, experience, observations, and mental-models in .agents/memory/.
Reflect on current session and record experience. /retrospect = remember. --plan = + backlog item. --fix = + implement now.
OpenADT product layer — fetch, proxy, transport choice (SDK default), MCP stub. Use when implementing or debugging ADT requests.
| name | backlog |
| description | Actionable improvement items derived from experience and retrospectives. Items live in .agents/backlog/. |
Actionable work items. Unlike memory (knowledge), backlog is about what to do next.
Write to .agents/backlog/YYYY-MM-DD-<slug>.md:
---
date: YYYY-MM-DD
tags: [tag1, tag2]
source: <path to memory/experience entry or PR URL>
---
## Problem
<what needs fixing or improving>
## Proposed action
<concrete next step — not a vague idea>
.agents/memory/observations/.source:./backlog <source> — sources/backlog writes triage into .agents/backlog/, but reads from many places:
| Source | Reads | Writes | When |
|---|---|---|---|
harvest | .agents/review-debt/harvests/*.jsonl (plus ledger.jsonl for terminal status) | .agents/backlog/*.md per row; then runs bun run harvest:archive to move fully-triaged harvest files into archive/harvests/ | After /harvest collected threads; before /act harvest |
gh | open review threads on a single PR (via gh pr view … --json …) | one backlog/*.md summarising the PR's threads | Live PR, before /act pr |
plan | .agents/plans/*.md | one backlog/*.md per plan item marked "to backlog" | After a planning round |
The archive step is the close-of-loop for /harvest. Once every row in a
harvest file has a terminal status in ledger.jsonl (done / wontfix /
duplicate), bun run harvest:archive moves the file under
archive/harvests/ and writes a sidecar *.archived.json marker. The next
/harvest cycle starts from a clean ledger, and the archive keeps an
immutable history of the original payload (useful for the "did we ever fix
this nit?" question).
If you only want to triage a row without archiving, that's fine — the archive pass is idempotent and safe to re-run after every batch.
See .agents/skills/harvest/SKILL.md § Lifecycle
for the full pipeline diagram.