luckiest-co 1.0.12 → 1.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/commands/charms.md +4 -2
- package/commands/finish.md +2 -2
- package/commands/go.md +6 -3
- package/commands/helpers.md +4 -2
- package/commands/home.md +4 -2
- package/commands/leaderboard.md +4 -2
- package/commands/merge.md +1 -1
- package/commands/overlaps.md +1 -1
- package/commands/plan.md +6 -4
- package/commands/skills.md +1 -1
- package/commands/start.md +1 -1
- package/commands/status.md +5 -3
- package/commands/updates.md +1 -1
- package/commands/vouch.md +1 -1
- package/commands/wishes.md +4 -2
- package/package.json +1 -1
- package/skills/luckiest-go/SKILL.md +4 -1
- package/skills/luckiest-plan/SKILL.md +4 -2
package/commands/charms.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
description: Your charms balance and recent related activity.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
|
+
|
|
7
|
+
Read `references/chart-renderer.md` before rendering any chart and follow it.
|
|
6
8
|
|
|
7
9
|
## Step 1: Get the data
|
|
8
10
|
|
|
@@ -27,7 +29,7 @@ Example:
|
|
|
27
29
|
→ /luckiest charms
|
|
28
30
|
```
|
|
29
31
|
|
|
30
|
-
Use only user-facing vocabulary
|
|
32
|
+
Use only user-facing vocabulary. Never surface PLAN, APPLY, UNIFY, DRAFT, DOING, DONE, HANDOFF, or any internal term.
|
|
31
33
|
|
|
32
34
|
## Step 3: Recommend next action
|
|
33
35
|
|
package/commands/finish.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Wrap up, what shipped, what changed, what's next.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
Asking the user a question: this command tells you to use the AskUserQuestion tool
|
|
8
8
|
so the user can click instead of typing. That tool only exists in Claude Code. In
|
|
@@ -33,7 +33,7 @@ Reply with a number, or tell me what to change.
|
|
|
33
33
|
|
|
34
34
|
## Step 1: Check that everything is done
|
|
35
35
|
|
|
36
|
-
Derive the project key
|
|
36
|
+
Derive the project key once per session: run `git config --get remote.origin.url` and normalize the result to lowercase `host/owner/repo` with any `.git` suffix removed (for example `git@github.com:acme/app.git` becomes `github.com/acme/app`). If it is not a git repo, use the absolute working directory path. If there is no local shell (web chat, Cowork), omit `project` entirely. Pass this same `project` value on both luckiest plan tool calls in this command (`status` here and `finish` in Step 3), so you close this project's plan and not another one.
|
|
37
37
|
|
|
38
38
|
Call the `status` tool from the luckiest MCP server with that `project` value.
|
|
39
39
|
|
package/commands/go.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Run your plan, one task at a time, checked as it goes.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
Asking the user a question: this command tells you to use the AskUserQuestion tool
|
|
8
8
|
so the user can click instead of typing. That tool only exists in Claude Code. In
|
|
@@ -33,7 +33,7 @@ Reply with a number, or tell me what to change.
|
|
|
33
33
|
|
|
34
34
|
## Step 1: Load the plan
|
|
35
35
|
|
|
36
|
-
Derive the project key
|
|
36
|
+
Derive the project key once per session: run `git config --get remote.origin.url` and normalize the result to lowercase `host/owner/repo` with any `.git` suffix removed (for example `git@github.com:acme/app.git` becomes `github.com/acme/app`). If it is not a git repo, use the absolute working directory path. If there is no local shell (web chat, Cowork), omit `project` entirely. Pass this same `project` value on every luckiest plan tool call in this command (`status`, `apply`, `verify`, `pause`), so you run this project's plan and not another one.
|
|
37
37
|
|
|
38
38
|
Call the `status` tool from the luckiest MCP server with that `project` value. This is a zero-context resume, treat its result as the full picture of where things stand: don't assume anything about prior state beyond what it returns.
|
|
39
39
|
|
|
@@ -60,7 +60,7 @@ Research subagents (looking something up, exploring the codebase) are always all
|
|
|
60
60
|
|
|
61
61
|
Take the ready tasks one at a time, in order. For each one:
|
|
62
62
|
|
|
63
|
-
1.
|
|
63
|
+
1. If the task is being handed to a subagent (fast mode), first turn it into a tight working prompt with the `luckiest-prompt-rewrite` skill, targeting that subagent and its model from Step 2; if the skill is not installed, write a clear prompt yourself. When you are doing the task yourself, skip the rewrite and start working; the task title and its "done means..." line are the prompt.
|
|
64
64
|
2. Do the work using the task's suggested skill. If that skill is installed, invoke it via the Skill tool. If it isn't installed, do the work directly without it.
|
|
65
65
|
3. Check your result against the task's "done means..." line. Don't move on until it's actually met.
|
|
66
66
|
4. If the result is something the user can try themselves (a page, a feature, a flow), ask with the AskUserQuestion tool so they can click instead of typing. Question: "Try it yourself, does it work?" Options: "Works" and "Needs fixes" (keep the "Other" free-text choice available). Wait for their answer.
|
|
@@ -71,6 +71,9 @@ Only move to the next ready task once the current one is applied and verified (o
|
|
|
71
71
|
|
|
72
72
|
After a task passes and is verified, run a quick automation check. Ask yourself: was this task repeatable, rule-based, or the kind of thing that will come up again? If yes, offer it with the AskUserQuestion tool so the user can click instead of typing. Question: "This looks worth automating. Turn it into a skill you can schedule or run as a routine?" Options: "Automate it" and "Skip" (keep the "Other" free-text choice available). Only offer, never build it without a yes. If they say yes, create the skill (with the skill-builder or skill-creator skill) and set it up to run on a schedule or as a routine. If the task was a one-off, skip the offer and move on.
|
|
73
73
|
|
|
74
|
+
|
|
75
|
+
Shell note: always quote file paths in shell commands. Paths with parentheses or brackets (for example `app/(public)/orders`) break zsh globbing when unquoted and waste turns on retries. Prefer the dedicated file tools (Read, Glob, Grep) over shell listing commands when either works.
|
|
76
|
+
|
|
74
77
|
## Step 4: Stop conditions
|
|
75
78
|
|
|
76
79
|
Pause and ask the user before doing any of the following, even if it seems like the obvious next step:
|
package/commands/helpers.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
description: See who needs a hand right now, and claim a request to help.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
|
+
|
|
7
|
+
Read `references/chart-renderer.md` before rendering any chart and follow it.
|
|
6
8
|
|
|
7
9
|
## Step 1: Get the data
|
|
8
10
|
|
|
@@ -55,7 +57,7 @@ Example:
|
|
|
55
57
|
→ tell me "claim a13" and I'll pick it up with respond_to_assist
|
|
56
58
|
```
|
|
57
59
|
|
|
58
|
-
Use only user-facing vocabulary
|
|
60
|
+
Use only user-facing vocabulary. Never surface PLAN, APPLY, UNIFY, DRAFT, DOING, DONE, HANDOFF, or any internal term. Do not fabricate requests, posters, or rewards beyond what the tools return.
|
|
59
61
|
|
|
60
62
|
## Step 3: Recommend next action
|
|
61
63
|
|
package/commands/home.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
description: The community dashboard. Wishes and charms, plan progress, tribe pulse, and who needs help.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
|
+
|
|
7
|
+
Read `references/chart-renderer.md` before rendering any chart and follow it.
|
|
6
8
|
|
|
7
9
|
## Step 1: Get the data
|
|
8
10
|
|
|
@@ -33,7 +35,7 @@ Render one fenced code block following the chart-renderer grammar, with four box
|
|
|
33
35
|
- One line: `open requests X` where X is `openAssists`.
|
|
34
36
|
- Footer: `→ /luckiest helpers`
|
|
35
37
|
|
|
36
|
-
Use only user-facing vocabulary
|
|
38
|
+
Use only user-facing vocabulary. Never surface PLAN, APPLY, UNIFY, DRAFT, DOING, DONE, HANDOFF, or any internal term.
|
|
37
39
|
|
|
38
40
|
## Step 3: Recommend next action
|
|
39
41
|
|
package/commands/leaderboard.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
description: See how the tribe ranks. Top scores, one bar chart.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
|
+
|
|
7
|
+
Read `references/chart-renderer.md` before rendering any chart and follow it.
|
|
6
8
|
|
|
7
9
|
## Step 1: Get the data
|
|
8
10
|
|
|
@@ -28,7 +30,7 @@ Render one fenced code block following the chart-renderer grammar.
|
|
|
28
30
|
|
|
29
31
|
4. **Footer**: last line in the block is `→ /luckiest leaderboard` (or the range-qualified form if a range was passed, e.g. `→ /luckiest leaderboard 30d`).
|
|
30
32
|
|
|
31
|
-
Use only user-facing vocabulary
|
|
33
|
+
Use only user-facing vocabulary. Never surface PLAN, APPLY, UNIFY, DRAFT, DOING, DONE, HANDOFF, or any internal term.
|
|
32
34
|
|
|
33
35
|
## Step 3: Recommend next action
|
|
34
36
|
|
package/commands/merge.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Merge two overlapping skills into one, after you review the diff.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
## Step 1: Get the two skill ids
|
|
8
8
|
|
package/commands/overlaps.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Find installed skills that overlap with your own, and resolve them.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
## Step 1: Pick a skill to check
|
|
8
8
|
|
package/commands/plan.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Plan your next piece of work. Guided questions, then a plan Claude can run.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
Asking the user a question: this command tells you to use the AskUserQuestion tool
|
|
8
8
|
so the user can click instead of typing. That tool only exists in Claude Code. In
|
|
@@ -37,7 +37,7 @@ Check whether `.luckiest/BRIEF.md` exists in the current project. If it exists,
|
|
|
37
37
|
|
|
38
38
|
## Step 2: Check for active work
|
|
39
39
|
|
|
40
|
-
Derive the project key
|
|
40
|
+
Derive the project key once per session: run `git config --get remote.origin.url` and normalize the result to lowercase `host/owner/repo` with any `.git` suffix removed (for example `git@github.com:acme/app.git` becomes `github.com/acme/app`). If it is not a git repo, use the absolute working directory path. If there is no local shell (web chat, Cowork), omit `project` entirely. Pass this same `project` value on every luckiest plan tool call in this command (`status` here and `plan` in Step 5), so this project gets its own plan and does not collide with another project's.
|
|
41
41
|
|
|
42
42
|
Call the `status` tool from the luckiest MCP server with that `project` value.
|
|
43
43
|
|
|
@@ -46,7 +46,9 @@ Call the `status` tool from the luckiest MCP server with that `project` value.
|
|
|
46
46
|
|
|
47
47
|
## Step 3: Run the interview
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
If the user's invocation already states the outcome they want (they passed arguments describing a goal, a feature, or a problem to solve), skip the interview question entirely. Say in one line that you are planning from what they gave you, use their stated outcome directly, and jump ahead to drafting the task list below. The approval question in Step 4 still runs; it is the only question they get.
|
|
50
|
+
|
|
51
|
+
Otherwise, open the interview with a short line that says no plan is active and you are starting the interview.
|
|
50
52
|
|
|
51
53
|
Then ask question 1 using the AskUserQuestion tool so the user can click an answer instead of typing one. Do not put the examples in plain text for them to copy. Present them as selectable options:
|
|
52
54
|
|
|
@@ -60,7 +62,7 @@ Use the answer (plus the brief, if present) to shape a draft task list of 3 to 7
|
|
|
60
62
|
|
|
61
63
|
Include non-coding work too. Marketing, content, design, research, and ops tasks belong in the plan alongside code. Never drop a task just because it is not a coding task; route it to its matching skill like any other.
|
|
62
64
|
|
|
63
|
-
|
|
65
|
+
Route all draft tasks in ONE `skill_router` call from the luckiest MCP server: pass `prompts` as an array of every task title. It returns `results`, one entry per task with `skills` (matching owned skills) and `who` (up to 3 tribe members who finished a similar task before). Attach the suggested skill(s) to each task, and attach `who` so the plan can carry who has done this kind of work. If the server rejects `prompts` (older server), fall back to one `skill_router` call per task, issued in parallel in a single message, never one at a time.
|
|
64
66
|
|
|
65
67
|
For each task, state a one-line "done means..." in chat (not in the title, not stored anywhere) so the user sees what complete looks like for that task. When `who` is not empty, add a short line naming those people, for example "Done before by: **Sam**, **Alex**."
|
|
66
68
|
|
package/commands/skills.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Your skills, list what's installed, pull new purchases.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
## Step 1: List installed luckiest skills
|
|
8
8
|
|
package/commands/start.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Tell me about your project, a short interview that writes your Brand Brief.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
## Step 1: Check for an existing brief
|
|
8
8
|
|
package/commands/status.md
CHANGED
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
description: Where you are. Progress, tasks, and your one next step.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
|
+
|
|
7
|
+
Read `references/chart-renderer.md` before rendering any chart and follow it.
|
|
6
8
|
|
|
7
9
|
## Step 1: Check for a plan
|
|
8
10
|
|
|
9
|
-
Derive the project key
|
|
11
|
+
Derive the project key once per session: run `git config --get remote.origin.url` and normalize the result to lowercase `host/owner/repo` with any `.git` suffix removed (for example `git@github.com:acme/app.git` becomes `github.com/acme/app`). If it is not a git repo, use the absolute working directory path. If there is no local shell (web chat, Cowork), omit `project` entirely. Then call the `status` tool from the luckiest MCP server with that `project` value so you read this project's plan and not another one.
|
|
10
12
|
|
|
11
13
|
If the returned state is null (no active plan), output nothing except these two lines, in order:
|
|
12
14
|
|
|
@@ -35,7 +37,7 @@ If a plan exists, render one fenced code block following the chart-renderer gram
|
|
|
35
37
|
5. **Bookmark line (if paused)**: If the state includes a bookmark (pause), add a line showing the bookmark message.
|
|
36
38
|
6. **Footer**: Last line in the block ends with the command to check status again (e.g. `→ /luckiest status`).
|
|
37
39
|
|
|
38
|
-
Use only
|
|
40
|
+
Use only user-facing vocabulary. Never surface PLAN, APPLY, UNIFY, DRAFT, DOING, DONE, HANDOFF, or any internal term.
|
|
39
41
|
|
|
40
42
|
Map each task's status to a glyph (these are the task status values, not the plan position):
|
|
41
43
|
- "done" -> `✓`
|
package/commands/updates.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Check for updates to your installed luckiest skills and plugin.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
## Step 1: Check for updates
|
|
8
8
|
|
package/commands/vouch.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: Request or approve a warm intro to someone outside your tribe.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
6
|
|
|
7
7
|
## Step 1: Figure out the intent
|
|
8
8
|
|
package/commands/wishes.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
description: Your wishes balance and recent related activity.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Output rules for this command: plain language, no em dashes, no internal terms, and end with exactly one next-step line in the form `Next: <one action>`. The server may return internal words; translate them and never show them: PLAN means plan, APPLY means go, UNIFY means finish, DRAFT means in progress, DOING means active, DONE means complete, UAT means testing, AC means requirements, HANDOFF means ready for review, skill_loop means status.
|
|
6
|
+
|
|
7
|
+
Read `references/chart-renderer.md` before rendering any chart and follow it.
|
|
6
8
|
|
|
7
9
|
## Step 1: Get the data
|
|
8
10
|
|
|
@@ -27,7 +29,7 @@ Example:
|
|
|
27
29
|
→ /luckiest wishes
|
|
28
30
|
```
|
|
29
31
|
|
|
30
|
-
Use only user-facing vocabulary
|
|
32
|
+
Use only user-facing vocabulary. Never surface PLAN, APPLY, UNIFY, DRAFT, DOING, DONE, HANDOFF, or any internal term.
|
|
31
33
|
|
|
32
34
|
## Step 3: Recommend next action
|
|
33
35
|
|
package/package.json
CHANGED
|
@@ -63,7 +63,7 @@ Research subagents (looking something up, exploring the codebase) are always all
|
|
|
63
63
|
|
|
64
64
|
Take the ready tasks one at a time, in order. For each one:
|
|
65
65
|
|
|
66
|
-
1.
|
|
66
|
+
1. If the task is being handed to a subagent (fast mode), first turn it into a tight working prompt with the `luckiest-prompt-rewrite` skill, targeting that subagent and its model from Step 2; if the skill is not installed, write a clear prompt yourself. When you are doing the task yourself, skip the rewrite and start working; the task title and its "done means..." line are the prompt.
|
|
67
67
|
2. Do the work using the task's suggested skill. If that skill is installed, invoke it via the Skill tool. If it isn't installed, do the work directly without it.
|
|
68
68
|
3. Check your result against the task's "done means..." line. Don't move on until it's actually met.
|
|
69
69
|
4. If the result is something the user can try themselves (a page, a feature, a flow), ask with the AskUserQuestion tool so they can click instead of typing. Question: "Try it yourself, does it work?" Options: "Works" and "Needs fixes" (keep the "Other" free-text choice available). Wait for their answer.
|
|
@@ -74,6 +74,9 @@ Only move to the next ready task once the current one is applied and verified (o
|
|
|
74
74
|
|
|
75
75
|
After a task passes and is verified, run a quick automation check. Ask yourself: was this task repeatable, rule-based, or the kind of thing that will come up again? If yes, offer it with the AskUserQuestion tool so the user can click instead of typing. Question: "This looks worth automating. Turn it into a skill you can schedule or run as a routine?" Options: "Automate it" and "Skip" (keep the "Other" free-text choice available). Only offer, never build it without a yes. If they say yes, create the skill (with the skill-builder or skill-creator skill) and set it up to run on a schedule or as a routine. If the task was a one-off, skip the offer and move on.
|
|
76
76
|
|
|
77
|
+
|
|
78
|
+
Shell note: always quote file paths in shell commands. Paths with parentheses or brackets (for example `app/(public)/orders`) break zsh globbing when unquoted and waste turns on retries. Prefer the dedicated file tools (Read, Glob, Grep) over shell listing commands when either works.
|
|
79
|
+
|
|
77
80
|
## Step 4: Stop conditions
|
|
78
81
|
|
|
79
82
|
Pause and ask the user before doing any of the following, even if it seems like the obvious next step:
|
|
@@ -49,7 +49,9 @@ Call the `status` tool from the luckiest MCP server with that `project` value.
|
|
|
49
49
|
|
|
50
50
|
## Step 3: Run the interview
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
If the user's invocation already states the outcome they want (they passed arguments describing a goal, a feature, or a problem to solve), skip the interview question entirely. Say in one line that you are planning from what they gave you, use their stated outcome directly, and jump ahead to drafting the task list below. The approval question in Step 4 still runs; it is the only question they get.
|
|
53
|
+
|
|
54
|
+
Otherwise, open the interview with a short line that says no plan is active and you are starting the interview.
|
|
53
55
|
|
|
54
56
|
Then ask question 1 using the AskUserQuestion tool so the user can click an answer instead of typing one. Do not put the examples in plain text for them to copy. Present them as selectable options:
|
|
55
57
|
|
|
@@ -63,7 +65,7 @@ Use the answer (plus the brief, if present) to shape a draft task list of 3 to 7
|
|
|
63
65
|
|
|
64
66
|
Include non-coding work too. Marketing, content, design, research, and ops tasks belong in the plan alongside code. Never drop a task just because it is not a coding task; route it to its matching skill like any other.
|
|
65
67
|
|
|
66
|
-
|
|
68
|
+
Route all draft tasks in ONE `skill_router` call from the luckiest MCP server: pass `prompts` as an array of every task title. It returns `results`, one entry per task with `skills` (matching owned skills) and `who` (up to 3 tribe members who finished a similar task before). Attach the suggested skill(s) to each task, and attach `who` so the plan can carry who has done this kind of work. If the server rejects `prompts` (older server), fall back to one `skill_router` call per task, issued in parallel in a single message, never one at a time.
|
|
67
69
|
|
|
68
70
|
For each task, state a one-line "done means..." in chat (not in the title, not stored anywhere) so the user sees what complete looks like for that task. When `who` is not empty, add a short line naming those people, for example "Done before by: **Sam**, **Alex**."
|
|
69
71
|
|