agentleFS
tenforward-audiotenforward-audio/swe-harness/.agents/skills/map-project-planning/SKILL.md

map-project-planning

Skill0 starsChanged 3 months agoMITView on GitHub

Preserve a fuzzy or multi-session planning effort as a repository-native map of precise questions, dependencies, deferred work, GNDN notes, and durable resolutions. Use when the user asks for a planning map, names a MAP-* or QUESTION-* record, or actively skips, defers, cannot answer, or wants to revisit a planning question later. Do not use grilling mode, implement the destination, or write repository state while native Plan mode is active.

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 6 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈6

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use ordinary Plan-mode exploration and questions.

    line 18
  2. Distinctive:

    Treat “skip”, “defer”, “I don't know”, “I can't answer that”, “I don't care yet”, and equivalent replies as deliberate planning decisions.

    line 20
  3. Distinctive:

    If the unknown can be phrased precisely now, add a provisional question.

    line 23
  4. Distinctive:

    Never manufacture a precise question from GNDN merely to create a ticket.

    line 25
  5. Distinctive:

    When the user leaves Plan mode and authorises the proposed action:

    line 67
  6. Distinctive:

    If the checkout changed or preflight fails, do not write.

    line 78
  7. Very specific:

    When a resolution sharpens GNDN, remove that GNDN entry and create a question whose Origin retains the GNDN identifier.

    line 99
  8. Very specific:

    Keep a consequential architectural decision in an ADR and a material finding from deliberately abandoned research in RESEARCH.md.

    line 102

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Map Project Planning

Execution mode

inline

../../WORKFLOW.md owns planning-record shapes, graph semantics, counters, and lifecycle. This skill owns the conversational mapping and persistence procedure.

Work with native Plan mode

  • Use ordinary Plan-mode exploration and questions. Do not invoke or imitate a separate grilling workflow.
  • Treat “skip”, “defer”, “I don't know”, “I can't answer that”, “I don't care yet”, and equivalent replies as deliberate planning decisions. Stop pursuing that question in the current conversation.
  • If the unknown can be phrased precisely now, add a provisional question. If only the shape of a concern is visible, add a provisional GNDN note instead. Never manufacture a precise question from GNDN merely to create a ticket.
  • Infer Kind, Answerable by, dependencies, relationships, and a concrete revisit trigger from available evidence. State material inference briefly so the user can correct it; do not turn confirmation into another interview.
  • Author only Depends on. Derive reverse blockers and never store a second Blocks field.
  • Maintain one compact provisional ledger delta as planning continues. Use local handles such as MAP-new, Q1, and F1; native Plan mode is read-only and must not reserve repository identifiers.
  • A blocking skipped question prevents an implementation-ready plan. Finish with a decision-complete map handoff only. Non-blocking deferred questions may accompany an implementation-ready plan when its implementation details are otherwise complete.

End the plan with one Planning ledger handoff section containing:

planning_ledger:
  readiness: map-only | implementation-ready
  map: create MAP-new | update MAP-NNN
  destination: one observable planning destination
  questions:
    - ref: Q1
      kind: decision | research | experiment | enabling-task
      question: one precise unanswered question
      answerable_by: user | agent | either
      depends_on: [Q2]
      related_to: []
      origin: G1 | none
      revisit_when: Now | concrete trigger
  gndn:
    - ref: G1
      note: in-scope concern not yet precise enough to ask
  resolutions: []

Omit empty collections only when the handoff says no planning record change is needed. The official plan must remain decision-complete for the action its readiness permits.

Persist after Plan mode

When the user leaves Plan mode and authorises the proposed action:

  1. Re-read ../../planning/ACTIVE.md, ../../planning/LEDGER.md, and only the live work cards named by the handoff. Do not trust provisional identifiers or stale counters.
  2. Match semantic duplicates before allocating identifiers. Reuse an existing record only when its map, precise question, and intended resolution are the same; otherwise preserve both.
  3. Allocate every new identifier from the owning counter, translate all local handles, update counters and the Updated date, and preflight the complete mutation for missing references, dependency cycles, and delivery blockers. If the checkout changed or preflight fails, do not write; report the refreshed handoff needed.
  4. Apply the complete map mutation as one coherent patch and validate the harness before checkpointing it.
  5. Checkpoint the validated tracking change on the canonical coordinating branch before any separate implementation branch or product mutation.
  6. For map-only, stop after persistence. For implementation-ready, continue only within the user's separately authorised implementation scope.

Revisit and resolve

  • Load an existing map at low resolution first: destination, scope, GNDN, resolved pointers, and the derived frontier. Open full question or resolution detail only when it can affect the current planning decision.
  • The frontier is every open question with Revisit when: Now and no open prerequisite. A future revisit trigger makes a question deferred, not blocked. An open prerequisite makes it blocked.
  • Resolve questions through normal Plan-mode discussion or evidence gathering. A resolution handoff moves the complete question to LEDGER.md, records its answer, rationale, evidence, date, and informed artifact, and removes any live delivery-card dependency on it in the same patch.
  • When a resolution sharpens GNDN, remove that GNDN entry and create a question whose Origin retains the GNDN identifier. Git history preserves the former GNDN text.
  • Keep a consequential architectural decision in an ADR and a material finding from deliberately abandoned research in RESEARCH.md; the planning ledger retains only the summary and canonical pointer rather than duplicate detail.
  • Conclude a map only when it has no open child questions or GNDN notes, or when the user explicitly abandons or redraws its destination. Move concluded maps to the ledger; never infer abandonment from inactivity.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.