wayfinder
この Skill は、曖昧で複雑な問題を調査チケットの構造化されたマップに変換し、目標が明確になるまで一つずつ解決するのに役立ちます。追跡可能な「チケット」を作成して問題を分解し、依存関係を明確にし、ユーザーが体系的に進めるよう導くことで、不確実なアイデアを明確で実行可能な計画に変えます。
npx skills add https://github.com/mattpocock/skills --skill wayfinderBefore / After 効果比較
1 组ユーザー/開発者は、曖昧で複雑な問題に直面した際、明確な着地点や解決策を見つけるのに苦労し、長時間の試行錯誤や非効率な議論につながることがよくあります。
この Skill は、複雑な問題を一連の明確な調査タスクに分解し、依存関係を明確にすることで、ユーザー/開発者が体系的に作業を進められるようになり、問題明確化の効率を大幅に向上させます。
A loose idea has arrived — too big for one agent session, and wrapped in fog: the route from here to a plan isn't visible yet. This skill charts it: stand up a map, then work its tickets one at a time until the way to the goal is clear. The map is domain-agnostic — engineering work, course content, whatever fits the shape.
The Map
The map is a single compact Markdown file, one per wayfinding effort, git-tracked alongside the project. It is the canonical artifact — the whole map is loaded as context into every session, so it must stay compact.
Assets created during tickets should be linked to from the map, not duplicated within it.
Structure
Entries ("tickets"), each its own section keyed by a short dash-case slug that
reads as a mini-title (e.g. relational-db, auth-strategy, cache-layer) —
terse enough to stay token-efficient, and unique within the map.
## relational-db: Relational Or Non-Relational Database?
Blocked by: <slug>, <slug>
Status: open | in-progress | resolved
Type: Research | Prototype | Grilling | Task
### Question
<question-here>
### Answer
<answer-here>
The slug is the canonical id, used in every Blocked by edge and prose
reference; the title after the colon is optional. A ticket
is unblocked when every ticket in its Blocked by list is resolved. A
session claims its ticket by setting Status: in-progress and saving the map
before any work, so concurrent sessions skip it.
Each ticket must be sized to one 100K token agent session.
Ticket Types
There are four types of tickets:
- Research: Reading documentation, third-party API's, or local resources like knowledge bases. Creates a markdown summary as an asset. Use this when knowledge outside the current working directory is required.
- Prototype: Raise the fidelity of the discussion by making a cheap, rough, concrete artifact to react to — an outline, a rough take, a stub, or UI/logic code via the /prototype skill. Creates the prototype as an asset. Use this when "how should it look" or "how should it behave" is the key question.
- Grilling: Conversation with the agent. Uses the /grilling and /domain-modeling skills. Asks one question at a time. The default case.
- Task: Literal manual work that must be done before the discussion can move forward — nothing to decide, prototype, or research. Moving data from one place to another, signing up for a third-party service, provisioning access. The agent automates it where it can; otherwise it hands the human a precise checklist to do by hand. Resolved when the work is done; the answer records what was done and any resulting facts (credentials location, new URLs, row counts) later tickets depend on.
Fog of war
The map is deliberately incomplete beyond the frontier — don't chart what you can't yet see. The frontier is the unblocked tickets at the edge of the known; resolve them to push it forward. Push back the fog of war one ticket at a time, until the way to the goal is clear and no tickets remain.
Invocation
Two branches. Either way, every session ends with a Handoff — never resolve more than one ticket per session.
Chart the map
User invokes with a loose idea.
- Run a
/grillingand/domain-modelingsession to surface the open decisions. - Write a new map — mostly fog, frontier identified, trivially-decidable entries resolved inline.
- Handoff. Charting the map is one session's work; do not also resolve tickets.
Work through the map
User invokes with a path to an existing map. A ticket slug is optional — without one, you pick the next decision, not the user.
- Load the whole map as context.
- Choose the ticket. If the user named one, use it. Otherwise pick the first
openticket in document order that is unblocked. Claim it: setStatus: in-progressand save before any work. - Resolve it, invoking skills as needed — including any the
## Notesblock names. If in doubt, use/grillingand/domain-modeling. - Record the answer in the ticket's body and set
Status: resolved. - Add newly-discovered tickets with correct
Blocked byedges. If the decisions made invalidate other parts of the map, update or delete those tickets. - Handoff.
The user may run unblocked tickets in parallel, so expect other agents to be editing the map in their own sessions.
Handoff
End every session by clearing the context and opening one or more fresh sessions. Close with a Next steps block the user can copy-paste. Two cases:
Open tickets remain. List the currently-unblocked tickets, then give two copy-paste options: a bare command for one session (you pick the next ticket), and one pinned command per unblocked ticket for running them in parallel. Paste one line per fresh window — opening one, some, or all of them.
Next steps — 3 tickets unblocked:
auth-strategy,cache-layer,rate-limits. Clear the context, then open fresh sessions.One session — resolves the next unblocked ticket:
Invoke /wayfinder with the map at <path>.Parallel — paste one line per window, up to all 3:
Invoke /wayfinder with the map at <path>, ticket auth-strategy. Invoke /wayfinder with the map at <path>, ticket cache-layer. Invoke /wayfinder with the map at <path>, ticket rate-limits.
No open tickets remain. The fog is pushed back far enough that the way to the goal is clear — the map is done. (The initial grilling may also surface no fog at all, in which case there was never a map to chart.) Recommend implementing directly, or using /to-prd to schedule a multi-session implementation.
Notes
An optional block declaring the domain, any skills every session should consult, and freeform standing preferences for this effort.
ユーザーレビュー (0)
レビューを書く
レビューなし
統計データ
ユーザー評価
この Skill を評価