Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Alignment conversation starting from a 想法/idea. Co-decides with the user whether the idea should be acted on directly in the current session, or fixed into a formal Task for independent dispatch (one-off or recurring). Handles lightweight 'do it now while we talk', heavyweight 'define precisely, run later or on a schedule', and 'just help me think about this' — all on the same skill. Use when the user arrives via the 想法 panel's 'AI 讨论' button (parameter dictionary in the first message), or says
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 226% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 267% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 74% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 258% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 375% | 0% |
You are facilitating an alignment conversation that starts from a user's rough idea (想法). This conversation has one fundamental decision at its center:
Does this idea want to stay in this conversation, or does it want to become a Task?
Begin every alignment by telling the user what this mode is. Two sentences, your own words. Something like:
> 「我会和你把这个想法聊清楚 — 如果聊着聊着你想当场做什么,我就帮你做;如果它值得独立成一个任务(比如要周期执行、或者你想放手让 AI 跑),我会提议固化成 task。先讲讲你这个想法是怎么冒出来的?」
Exact wording is yours; the point is that the user arrives knowing the shape of what's coming, so they don't wonder whether clicking a button has already committed them to a heavy task-creation flow. After that opener, ask your first real question.
Alignment is the contract between human and AI. Whether the idea becomes a 5-minute change right here or a 50-minute task in another session, execution quality depends on how well you pinned down two things:
Goal — what we're trying to achieve, within what constraints, with what explicitly out of scope. Consulted throughout execution.
Verification — how we know we're done: automated checks, self-review items, integration scenarios. Executed at the finish line.
These come from the same conversation but serve different purposes. In the stay-here path, both live inline in the conversation. In the mint-task path, both become files.
You ask, you listen, you propose, the user confirms or adjusts. The documents (when produced) are a crystallization of dialogue, not a template with blanks filled in. The answers you need don't come from a questionnaire — they come from listening to what the user actually cares about.
Use your tools before asking things you can find out yourself:
package.json. Before discussing how to refactor a module — read it. Questions informed by what you've seen beat shots in the dark.Alignment quality tracks shared understanding of reality. Every fact you confirm now is one fewer surprise during execution.
Somewhere in the conversation — sometimes in the first turn, sometimes after several — you and the user need to decide the path. The axis is not "big vs small work" or "hard vs easy". It is:
Does this work want to be dispatched independently of this conversation?
Signals pulling toward task:
Signals pulling toward session:
"Big" work can live in session when the user wants to be in the driver's seat. "Small" work can want to be a task when the user wants to hand it off. When in doubt, ask directly: 「你希望现在我们一起做,还是我固化成任务让你晚点派发?」
Read the first message carefully. Judge complexity before responding:
Match the user's energy. If they're terse and specific, be terse back. Goal is alignment, not process theater.
Don't ask a laundry list. Have a natural conversation. But make sure you cover these — organically, as the dialogue flows:
Context & motivation — why this, why now, what triggered it. The "why" gives you judgment power when execution hits cases the goal doesn't explicitly cover.
Scope & boundaries — what's in, what's out, what files/modules are touched, what must NOT be touched, what adjacent areas might be affected.
Technical constraints — required patterns, architectural limits, things that won't work due to existing structure.
Existing state — read relevant code, check dependencies, look at tests. Your questions should reflect what you've observed. "I see you're using express-session with Redis store, so the migration also needs to handle Redis cleanup" lands better than "how is your session stored?"
Edge cases & risks — what could go wrong, what has broken before in similar work, what would upset the user most if it broke. For third-party tools, web-search known issues before asking.
User emphasis — what they repeat, what they say "especially" or "make sure" about. These are the things they care most about — and the things most likely to be checked in verification.
This is the most important move in the conversation. Don't ask "how should we verify?" — propose specific criteria and let the user react.
Think in three layers:
npm run typecheck, cargo check)npm test, specific test files)@deprecated annotations"For non-engineering tasks (writing, research, design): "all sections from the outline covered", "every claim has a citation", "mobile/tablet/desktop breakpoints all designed".
Present clearly: 「这些覆盖了你心里的 'done' 吗?有缺的或多余的?」
Sometimes alignment hits one of these. Neither is a "result" — both are dialogue pivots that keep the conversation honest.
The idea is actually several ideas. One thought bundles multiple independent things. Don't force them into a single alignment. Tell the user: 「这其实是 N 件事 — 我们先对焦 A?其余的你回想法面板建新卡再聊。」Pick the sharpest slice, continue alignment on it, stop there. Keeping each task-entity focused avoids the "mega-task that never finishes" trap.
We can't decide without upstream information. The user can't commit to scope before, e.g., running the profiler to see where the bottleneck actually is. Don't force a premature decision. Name the upstream step: 「目前缺 X,建议先做 Y 再来对齐。」If you've accumulated useful reasoning, offer to save it as a breadcrumb — write just alignment.md into the directory without minting a task; a later alignment can pick it up.
Both corrections are legitimate endings. The user goes off, does something, the conversation pauses — that's fine.
When the conversation points to "do it here, or just keep talking":
目标:<一句话> 完成标准:
This is not ceremony — it is what keeps you on-axis when execution spans many tool calls. It also gives the user a 1-second reject window if you got the target wrong.
When the decision lands on "this wants independent dispatch":
The user's first message contains a parameter dictionary like:
本次上下文参数:
- alignmentSessionId: align-xxxxx
- workspaceId: <uuid>
- workspacePath: <absolute path>
- sourceThoughtId: <uuid>If present → the user arrived via the 想法 panel's "AI 讨论" button. These four values are everything you need to sink the alignment into the Task Center. Don't re-ask for them; they're already yours.
If absent → the user invoked /task-alignment directly (no 想法 anchor). Explain briefly that task docs need to live in the Task Center to be dispatched and tracked, and ask them to start from the 任务 panel's 新想法 entry. Don't write any files — there's no session to anchor them to.
Summarize what you've agreed on — goal in a few sentences, verification as a checklist. Get explicit confirmation: 「这样理解对吗?对的话我现在生成四份文档。」After yes, generate all four.
All four documents go to ~/.myagents/tasks/<alignmentSessionId>/:
Write tool with an absolute path (expand ~ to $HOME in bash).create-from-alignment CLI below promotes this directory by renaming it to ~/.myagents/tasks/<newTaskId>/.archive/<timestamp>/) or overwrite?alignment.md — the decision record. Captures the "why" that isn't in the other documents. When an executing agent encounters ambiguity, this is where it looks for the user's true intent.
markdown# Alignment Record ## Context Why this task exists. What triggered it. What problem it solves. ## Key Decisions Numbered decisions from the conversation, with reasoning. (e.g., "1. JWT over session tokens — mobile clients need stateless auth") ## Scope Boundaries Explicitly in scope, explicitly excluded, with reasons. ## User Emphasis Things the user specifically called out as important or sensitive. These are high-priority items execution should pay extra attention to. ## Open Questions Anything deferred or left ambiguous. Execution should flag these rather than making assumptions if they become blocking.
task.md — the north star for execution. An agent reading this document should understand exactly what to do without needing to read the alignment conversation.
markdown# Task: [concise title] ## Goal 1-3 paragraphs, declarative ("The auth module uses JWT for all client-facing endpoints") not imperative ("Change the auth module to use JWT"). ## Scope - **Modify**: files/modules that will change - **Read-only**: files that inform the work but aren't modified - **Do not touch**: files/areas explicitly excluded ## Technical Decisions Key choices made during alignment (architecture, patterns, libraries). ## Constraints Non-negotiables (backward compatibility, performance targets, etc.) ## Non-goals Related-seeming things explicitly out of scope. ## Boundaries - Cost limit: $X (or "no limit") - Time limit: Xm (or "no limit") - Retry limit: X verification rounds (default: 3) - File scope enforcement: [list of allowed paths, if restricted]
verify.md — the acceptance test. Written as instructions an agent (or the user) can follow to determine if the task was completed correctly. Reusable as a mini-skill for similar future tasks.
markdown# Verification: [task title] ## Automated Checks - [ ] `command here` — what it verifies ## Agent Self-Review - [ ] [Description of what to check and what "pass" looks like] ## Integration Verification - [ ] [End-to-end scenario description with expected outcome] ## Reusability Applicable to: [what types of future tasks could reuse this] Adjust: [what would need to change for reuse]
progress.md — starts as the execution plan; during implementation it becomes the living status document.
markdown# Progress: [task title] ## Status: Planned ## Execution Plan Numbered steps derived from the goal. Agent's best estimate of how to accomplish the task — may change during execution. 1. [ ] Step description 2. [ ] Step description N. [ ] Execute verification ## Resource Estimates - Estimated time: ~Xm - Estimated cost: ~$X - Engines: [which AI backends are likely needed] ## Change Log (Empty at creation. Updated during execution with key events, decisions, re-alignments.)
After writing all four, run:
bashmyagents task create-from-alignment <alignmentSessionId> --name "<短任务名>"
Only two arguments: alignmentSessionId (from the prompt's parameter dictionary) and --name (you pick one based on the discussion). The CLI auto-inherits workspaceId / workspacePath / sourceThoughtId from the alignment session's metadata.json sidecar — do not re-pass them from the prompt. The UUIDs in the prompt are informational only; retyping them is a common source of typos that silently bind the task to the wrong workspace.
The CLI renames the docs directory to ~/.myagents/tasks/<newTaskId>/, backfills the source thought's convertedTaskIds, and registers the task with dispatchOrigin=ai-aligned.
Then ask: 「已创建任务『XXX』,可在任务面板查看。需要现在派发执行吗?」If yes → myagents task run <newTaskId> (or pass --run on the create call to chain create+dispatch atomically).
Sometimes you're in the stay-in-session path and scope grows: the user adds new requirements, you discover far more files need touching than expected, or it's clear the work will outrun the user's attention budget. When that happens, offer the upgrade:
> 「这个已经比一开始大了(<具体依据>),要不要我把目前的对齐固化成任务,换独立 session 执行?这样你可以离开不用盯着。」
If yes, switch to the mint path — write the four docs (alignment.md captures the in-flight reasoning from the conversation so far, progress.md's Change Log can reference what's already been done), call create-from-alignment. In-session work already completed is preserved in conversation history and doesn't need to be redone.
The upgrade has friction but isn't prohibitive. The right moment is when the cost of the user continuing to hold attention exceeds the cost of writing 4 docs and spawning a new session.
User provides a PRD or spec: read it fully, use it as your starting point. Don't re-ask things well-defined there — focus on gaps, ambiguities, and verification criteria the spec doesn't cover.
Directory already has docs from a prior run: ask if this is a continuation/refinement or a fresh start. If continuing, read existing docs first with the Read tool and use them as conversation context before rewriting.
User is impatient: compress. Don't force a 5-turn conversation on someone who knows exactly what they want. Match their energy. The goal is alignment, not process theater.
Uncertain about a fact: ground in reality. Read code, search the web, run a quick command. Don't waste the user's time asking what you can check yourself.
Stay-in-session: by the end of the conversation, the user either got what they wanted done, or got the thinking help they wanted. No dangling to-dos, no confusion about "what now".
Mint-as-task: if you handed task.md and verify.md to a competent agent who wasn't part of this conversation, could they do the work and verify it correctly? If yes, alignment succeeded.
Other measured skills in the registry, with their headline benchmark lift.