@codyswann/lisa 2.0.0 → 2.1.1
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/package.json +1 -1
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/commands/implement.md +3 -3
- package/plugins/lisa/commands/improve/max-lines.md +1 -1
- package/plugins/lisa/commands/intake.md +6 -0
- package/plugins/lisa/commands/monitor.md +2 -6
- package/plugins/lisa/commands/plan.md +3 -23
- package/plugins/lisa/commands/research.md +2 -6
- package/plugins/lisa/commands/verify.md +2 -6
- package/plugins/lisa/rules/intent-routing.md +14 -13
- package/plugins/lisa/skills/implement/SKILL.md +20 -11
- package/plugins/lisa/skills/intake/SKILL.md +56 -0
- package/plugins/lisa/skills/jira-add-journey/SKILL.md +1 -1
- package/plugins/lisa/skills/jira-build-intake/SKILL.md +18 -18
- package/plugins/lisa/skills/jira-create/SKILL.md +17 -17
- package/plugins/lisa/skills/jira-source-artifacts/SKILL.md +1 -1
- package/plugins/lisa/skills/jira-validate-ticket/SKILL.md +4 -4
- package/plugins/lisa/skills/jira-verify/SKILL.md +5 -5
- package/plugins/lisa/skills/jira-write-ticket/SKILL.md +12 -12
- package/plugins/lisa/skills/monitor/SKILL.md +33 -0
- package/plugins/lisa/skills/notion-prd-intake/SKILL.md +11 -11
- package/plugins/lisa/skills/notion-to-jira/SKILL.md +32 -32
- package/plugins/lisa/skills/plan/SKILL.md +38 -0
- package/plugins/lisa/skills/prd-ticket-coverage/SKILL.md +4 -4
- package/plugins/lisa/skills/product-walkthrough/SKILL.md +3 -3
- package/plugins/lisa/skills/research/SKILL.md +23 -0
- package/plugins/lisa/skills/ticket-triage/SKILL.md +3 -3
- package/plugins/lisa/skills/verify/SKILL.md +32 -0
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/skills/jira-add-journey/SKILL.md +1 -1
- package/plugins/lisa-expo/skills/jira-create/SKILL.md +17 -17
- package/plugins/lisa-expo/skills/jira-verify/SKILL.md +5 -5
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/commands/fix/linter-error.md +1 -1
- package/plugins/lisa-rails/commands/improve/code-complexity.md +1 -1
- package/plugins/lisa-rails/commands/improve/max-lines-per-function.md +1 -1
- package/plugins/lisa-rails/commands/improve/max-lines.md +1 -1
- package/plugins/lisa-rails/commands/improve/test-coverage.md +1 -1
- package/plugins/lisa-rails/skills/jira-create/SKILL.md +16 -16
- package/plugins/lisa-rails/skills/jira-verify/SKILL.md +4 -4
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/src/base/commands/implement.md +3 -3
- package/plugins/src/base/commands/improve/max-lines.md +1 -1
- package/plugins/src/base/commands/intake.md +6 -0
- package/plugins/src/base/commands/monitor.md +2 -6
- package/plugins/src/base/commands/plan.md +3 -23
- package/plugins/src/base/commands/research.md +2 -6
- package/plugins/src/base/commands/verify.md +2 -6
- package/plugins/src/base/rules/intent-routing.md +14 -13
- package/plugins/src/base/skills/implement/SKILL.md +20 -11
- package/plugins/src/base/skills/intake/SKILL.md +56 -0
- package/plugins/src/base/skills/jira-add-journey/SKILL.md +1 -1
- package/plugins/src/base/skills/jira-build-intake/SKILL.md +18 -18
- package/plugins/src/base/skills/jira-create/SKILL.md +17 -17
- package/plugins/src/base/skills/jira-source-artifacts/SKILL.md +1 -1
- package/plugins/src/base/skills/jira-validate-ticket/SKILL.md +4 -4
- package/plugins/src/base/skills/jira-verify/SKILL.md +5 -5
- package/plugins/src/base/skills/jira-write-ticket/SKILL.md +12 -12
- package/plugins/src/base/skills/monitor/SKILL.md +33 -0
- package/plugins/src/base/skills/notion-prd-intake/SKILL.md +11 -11
- package/plugins/src/base/skills/notion-to-jira/SKILL.md +32 -32
- package/plugins/src/base/skills/plan/SKILL.md +38 -0
- package/plugins/src/base/skills/prd-ticket-coverage/SKILL.md +4 -4
- package/plugins/src/base/skills/product-walkthrough/SKILL.md +3 -3
- package/plugins/src/base/skills/research/SKILL.md +23 -0
- package/plugins/src/base/skills/ticket-triage/SKILL.md +3 -3
- package/plugins/src/base/skills/verify/SKILL.md +32 -0
- package/plugins/src/expo/skills/jira-add-journey/SKILL.md +1 -1
- package/plugins/src/expo/skills/jira-create/SKILL.md +17 -17
- package/plugins/src/expo/skills/jira-verify/SKILL.md +5 -5
- package/plugins/src/rails/commands/fix/linter-error.md +1 -1
- package/plugins/src/rails/commands/improve/code-complexity.md +1 -1
- package/plugins/src/rails/commands/improve/max-lines-per-function.md +1 -1
- package/plugins/src/rails/commands/improve/max-lines.md +1 -1
- package/plugins/src/rails/commands/improve/test-coverage.md +1 -1
- package/plugins/src/rails/skills/jira-create/SKILL.md +16 -16
- package/plugins/src/rails/skills/jira-verify/SKILL.md +4 -4
|
@@ -6,13 +6,13 @@ allowed-tools: ["Read", "Glob", "LS", "Skill", "mcp__atlassian__getVisibleJiraPr
|
|
|
6
6
|
|
|
7
7
|
# Create JIRA Issues from $ARGUMENTS
|
|
8
8
|
|
|
9
|
-
Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans structure only — every individual ticket write is delegated to `jira-write-ticket`.** Do not call `mcp__atlassian__createJiraIssue` from this skill; the necessary write tools are intentionally not in `allowed-tools`.
|
|
9
|
+
Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans structure only — every individual ticket write is delegated to `lisa:jira-write-ticket`.** Do not call `mcp__atlassian__createJiraIssue` from this skill; the necessary write tools are intentionally not in `allowed-tools`.
|
|
10
10
|
|
|
11
11
|
## Process
|
|
12
12
|
|
|
13
13
|
1. **Analyze**: Read $ARGUMENTS to understand scope.
|
|
14
|
-
2. **Extract source artifacts**: invoke the `jira-source-artifacts` skill, then enumerate every external URL, embed, attachment, or example payload and classify each by domain per its rules. Build the `artifacts` map. See "Source Artifacts" below.
|
|
15
|
-
3. **Walk the live product** (when applicable): if the work touches existing user-facing surfaces, invoke the `product-walkthrough` skill to capture current behavior, design-vs-product divergence, and reuse candidates. Especially load-bearing for Expo/React Native — a UI ticket without a current-product walkthrough is missing context the implementer needs. Skip only when the work is purely backend or affects a screen that does not yet exist. See "Live Product Walkthrough" below.
|
|
14
|
+
2. **Extract source artifacts**: invoke the `lisa:jira-source-artifacts` skill, then enumerate every external URL, embed, attachment, or example payload and classify each by domain per its rules. Build the `artifacts` map. See "Source Artifacts" below.
|
|
15
|
+
3. **Walk the live product** (when applicable): if the work touches existing user-facing surfaces, invoke the `lisa:product-walkthrough` skill to capture current behavior, design-vs-product divergence, and reuse candidates. Especially load-bearing for Expo/React Native — a UI ticket without a current-product walkthrough is missing context the implementer needs. Skip only when the work is purely backend or affects a screen that does not yet exist. See "Live Product Walkthrough" below.
|
|
16
16
|
4. **Determine structure**:
|
|
17
17
|
- Epic needed if: multiple features, major changes, >3 related files
|
|
18
18
|
- Direct tasks if: bug fix, single file, minor change
|
|
@@ -20,8 +20,8 @@ Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans struc
|
|
|
20
20
|
```text
|
|
21
21
|
Epic → User Story → Tasks (test, implement, document, cleanup)
|
|
22
22
|
```
|
|
23
|
-
6. **Delegate every write to `jira-write-ticket`** in dependency order (epic first, then stories with the epic as parent, then sub-tasks with their story as parent). Pass the artifacts (filtered by domain per `jira-source-artifacts` inheritance rules), the walkthrough findings (under `## Current Product`), and — for UI tickets — the Validation Journey draft with `[SCREENSHOT: ...]` markers. See "Delegation to jira-write-ticket" below.
|
|
24
|
-
7. **Run the artifact preservation gate** (`jira-source-artifacts` §8): after all writes complete, build the preservation matrix and verify every extracted artifact is reachable from the created tickets. Fail loudly if anything was dropped.
|
|
23
|
+
6. **Delegate every write to `lisa:jira-write-ticket`** in dependency order (epic first, then stories with the epic as parent, then sub-tasks with their story as parent). Pass the artifacts (filtered by domain per `lisa:jira-source-artifacts` inheritance rules), the walkthrough findings (under `## Current Product`), and — for UI tickets — the Validation Journey draft with `[SCREENSHOT: ...]` markers. See "Delegation to jira-write-ticket" below.
|
|
24
|
+
7. **Run the artifact preservation gate** (`lisa:jira-source-artifacts` §8): after all writes complete, build the preservation matrix and verify every extracted artifact is reachable from the created tickets. Fail loudly if anything was dropped.
|
|
25
25
|
|
|
26
26
|
## Mandatory for Every Code Issue
|
|
27
27
|
|
|
@@ -34,7 +34,7 @@ Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans struc
|
|
|
34
34
|
|
|
35
35
|
## Validation Journey (Frontend Tickets)
|
|
36
36
|
|
|
37
|
-
Every ticket that changes, adds, or fixes UI must include a `Validation Journey` section in the description. This section is consumed by the `jira-journey` skill to automate visual verification via Playwright.
|
|
37
|
+
Every ticket that changes, adds, or fixes UI must include a `Validation Journey` section in the description. This section is consumed by the `lisa:jira-journey` skill to automate visual verification via Playwright.
|
|
38
38
|
|
|
39
39
|
### When to Include
|
|
40
40
|
|
|
@@ -95,15 +95,15 @@ h3. Assertions
|
|
|
95
95
|
|
|
96
96
|
If $ARGUMENTS includes (or references) any external artifact — PRD, design doc, Figma URL, Lovable prototype, Loom walkthrough, screenshot, example payload — those references MUST be preserved as remote links on the created tickets. Silent artifact loss is the single most common quality failure in this pipeline.
|
|
97
97
|
|
|
98
|
-
**Invoke the `jira-source-artifacts` skill** for the canonical rules: domains, per-tool classification (Figma `/proto/` vs design, Lovable, Loom, screenshots), source precedence, conflict handling under `## Open Questions`, inheritance from epic → story → sub-task, and the existing-component reuse expectation. Do not restate the rules here.
|
|
98
|
+
**Invoke the `lisa:jira-source-artifacts` skill** for the canonical rules: domains, per-tool classification (Figma `/proto/` vs design, Lovable, Loom, screenshots), source precedence, conflict handling under `## Open Questions`, inheritance from epic → story → sub-task, and the existing-component reuse expectation. Do not restate the rules here.
|
|
99
99
|
|
|
100
100
|
Expo-specific note: the existing-component reuse rule is especially load-bearing for React Native — the project has an established component library; pixel-matching a mock instead of reusing components is the most common drift mode.
|
|
101
101
|
|
|
102
|
-
When delegating writes to `jira-write-ticket`, pass the extracted artifact list so its Phase 4c step can attach them.
|
|
102
|
+
When delegating writes to `lisa:jira-write-ticket`, pass the extracted artifact list so its Phase 4c step can attach them.
|
|
103
103
|
|
|
104
104
|
## Live Product Walkthrough
|
|
105
105
|
|
|
106
|
-
When the work touches existing user-facing surfaces, invoke the `product-walkthrough` skill before drafting tickets. Findings (current behavior, design-vs-product divergence, reuse candidates, behavioral surprises) become inputs to the ticket plan and surface under `## Current Product` on the resulting tickets, complementing the Validation Journey (which describes how to verify the *new* behavior, not what exists today). Skip only when the work is purely backend or affects a screen that does not yet exist.
|
|
106
|
+
When the work touches existing user-facing surfaces, invoke the `lisa:product-walkthrough` skill before drafting tickets. Findings (current behavior, design-vs-product divergence, reuse candidates, behavioral surprises) become inputs to the ticket plan and surface under `## Current Product` on the resulting tickets, complementing the Validation Journey (which describes how to verify the *new* behavior, not what exists today). Skip only when the work is purely backend or affects a screen that does not yet exist.
|
|
107
107
|
|
|
108
108
|
## Issue Requirements
|
|
109
109
|
|
|
@@ -118,9 +118,9 @@ Exclude unless requested: migration plans, performance tests
|
|
|
118
118
|
|
|
119
119
|
## Delegation to jira-write-ticket
|
|
120
120
|
|
|
121
|
-
**Mandatory.** Every ticket created by this skill MUST go through `jira-write-ticket`. This skill never calls `mcp__atlassian__createJiraIssue` itself — that tool is intentionally excluded from `allowed-tools` so the gate cannot be bypassed.
|
|
121
|
+
**Mandatory.** Every ticket created by this skill MUST go through `lisa:jira-write-ticket`. This skill never calls `mcp__atlassian__createJiraIssue` itself — that tool is intentionally excluded from `allowed-tools` so the gate cannot be bypassed.
|
|
122
122
|
|
|
123
|
-
`jira-write-ticket` enforces things this skill does not, and which determine ticket quality:
|
|
123
|
+
`lisa:jira-write-ticket` enforces things this skill does not, and which determine ticket quality:
|
|
124
124
|
- 3-audience description (Context / Technical Approach / Acceptance Criteria)
|
|
125
125
|
- Gherkin acceptance criteria
|
|
126
126
|
- Epic parent validation (non-bug, non-epic types)
|
|
@@ -134,9 +134,9 @@ Exclude unless requested: migration plans, performance tests
|
|
|
134
134
|
|
|
135
135
|
Tickets must be created in parent-before-child order so each child can be passed its parent key:
|
|
136
136
|
|
|
137
|
-
1. Invoke `jira-write-ticket` for the epic. Capture the returned key.
|
|
138
|
-
2. For each story, invoke `jira-write-ticket` with the epic key as the epic parent. Capture each story key.
|
|
139
|
-
3. For each sub-task, invoke `jira-write-ticket` with the parent story key.
|
|
137
|
+
1. Invoke `lisa:jira-write-ticket` for the epic. Capture the returned key.
|
|
138
|
+
2. For each story, invoke `lisa:jira-write-ticket` with the epic key as the epic parent. Capture each story key.
|
|
139
|
+
3. For each sub-task, invoke `lisa:jira-write-ticket` with the parent story key.
|
|
140
140
|
|
|
141
141
|
### What to pass to each invocation
|
|
142
142
|
|
|
@@ -145,8 +145,8 @@ For every delegated write, pass:
|
|
|
145
145
|
- The 3-section description body you drafted (Context / Technical Approach / Acceptance Criteria)
|
|
146
146
|
- Gherkin acceptance criteria
|
|
147
147
|
- Parent key (epic key for stories; story key for sub-tasks)
|
|
148
|
-
- The artifact list extracted in "Source Artifacts", filtered by domain per the inheritance rules — `jira-write-ticket` Phase 4c attaches them as remote links
|
|
149
|
-
- For UI-touching tickets: the Validation Journey draft (with `[SCREENSHOT: ...]` markers, viewports, and feature-flag prerequisites). If the journey is missing, instruct it to call `jira-add-journey` after create.
|
|
148
|
+
- The artifact list extracted in "Source Artifacts", filtered by domain per the inheritance rules — `lisa:jira-write-ticket` Phase 4c attaches them as remote links
|
|
149
|
+
- For UI-touching tickets: the Validation Journey draft (with `[SCREENSHOT: ...]` markers, viewports, and feature-flag prerequisites). If the journey is missing, instruct it to call `lisa:jira-add-journey` after create.
|
|
150
150
|
|
|
151
151
|
### What this skill is responsible for
|
|
152
152
|
|
|
@@ -158,4 +158,4 @@ This skill owns:
|
|
|
158
158
|
- Drafting the Validation Journey for UI tickets (this is Expo-specific guidance the base skill doesn't have)
|
|
159
159
|
- Running the artifact preservation check after all writes complete
|
|
160
160
|
|
|
161
|
-
It does not own the actual JIRA write — that's `jira-write-ticket`'s job.
|
|
161
|
+
It does not own the actual JIRA write — that's `lisa:jira-write-ticket`'s job.
|
|
@@ -6,22 +6,22 @@ allowed-tools: ["Skill", "mcp__atlassian__getJiraIssue", "mcp__atlassian__getAcc
|
|
|
6
6
|
|
|
7
7
|
# Verify JIRA Ticket: $ARGUMENTS
|
|
8
8
|
|
|
9
|
-
Verify that the existing JIRA ticket `$ARGUMENTS` meets organizational standards. This skill is a thin post-write wrapper around `jira-validate-ticket`: it fetches the live ticket and asks `jira-validate-ticket` to run the gates against the fetched state.
|
|
9
|
+
Verify that the existing JIRA ticket `$ARGUMENTS` meets organizational standards. This skill is a thin post-write wrapper around `lisa:jira-validate-ticket`: it fetches the live ticket and asks `lisa:jira-validate-ticket` to run the gates against the fetched state.
|
|
10
10
|
|
|
11
|
-
This indirection exists so the gate definitions live in exactly one place (`jira-validate-ticket`). When the bar changes, change it there — `jira-verify`, `jira-write-ticket` (Phase 5.5 pre-write), and `notion-to-jira` (PRD dry-run) all pick it up.
|
|
11
|
+
This indirection exists so the gate definitions live in exactly one place (`lisa:jira-validate-ticket`). When the bar changes, change it there — `lisa:jira-verify`, `lisa:jira-write-ticket` (Phase 5.5 pre-write), and `lisa:notion-to-jira` (PRD dry-run) all pick it up.
|
|
12
12
|
|
|
13
13
|
## Process
|
|
14
14
|
|
|
15
15
|
1. Resolve cloud ID via `mcp__atlassian__getAccessibleAtlassianResources`.
|
|
16
16
|
2. Fetch the ticket via `mcp__atlassian__getJiraIssue` for `$ARGUMENTS`.
|
|
17
|
-
3. Invoke `jira-validate-ticket` and pass the ticket key. The validator runs every gate (Specification + Feasibility) against the live state, including the Validation Journey check (S11) which applies to any runtime-behavior change — UI tickets in Expo always qualify.
|
|
17
|
+
3. Invoke `lisa:jira-validate-ticket` and pass the ticket key. The validator runs every gate (Specification + Feasibility) against the live state, including the Validation Journey check (S11) which applies to any runtime-behavior change — UI tickets in Expo always qualify.
|
|
18
18
|
4. Surface the validator's report verbatim.
|
|
19
19
|
|
|
20
20
|
## Output
|
|
21
21
|
|
|
22
|
-
Pass through `jira-validate-ticket`'s structured output unchanged. Downstream callers parse the gate lines.
|
|
22
|
+
Pass through `lisa:jira-validate-ticket`'s structured output unchanged. Downstream callers parse the gate lines.
|
|
23
23
|
|
|
24
24
|
## Notes
|
|
25
25
|
|
|
26
26
|
- This skill is read-only. It never edits the ticket, posts comments, or changes status.
|
|
27
|
-
- For UI tickets that fail the Validation Journey gate, the validator's remediation will recommend `/jira-add-journey` — the Expo flavor of `jira-add-journey` produces the `[SCREENSHOT: ...]` + viewport block that the Playwright-based journey runner consumes.
|
|
27
|
+
- For UI tickets that fail the Validation Journey gate, the validator's remediation will recommend `/lisa:jira-add-journey` — the Expo flavor of `lisa:jira-add-journey` produces the `[SCREENSHOT: ...]` + viewport block that the Playwright-based journey runner consumes.
|
|
@@ -3,4 +3,4 @@ description: "Reduce the cognitive complexity threshold by 2 and fix all violati
|
|
|
3
3
|
allowed-tools: ["Skill"]
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
Use the /lisa-rails:
|
|
6
|
+
Use the /lisa-rails:improve-code-complexity skill to lower code complexity.
|
|
@@ -4,4 +4,4 @@ allowed-tools: ["Skill"]
|
|
|
4
4
|
argument-hint: "<max-lines-per-function-value>"
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
Use the /lisa-rails:
|
|
7
|
+
Use the /lisa-rails:improve-max-lines-per-function skill to reduce max function lines. $ARGUMENTS
|
|
@@ -6,13 +6,13 @@ allowed-tools: ["Read", "Glob", "LS", "Skill", "mcp__atlassian__getVisibleJiraPr
|
|
|
6
6
|
|
|
7
7
|
# Create JIRA Issues from $ARGUMENTS
|
|
8
8
|
|
|
9
|
-
Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans structure only — every individual ticket write is delegated to `jira-write-ticket`.** Do not call `mcp__atlassian__createJiraIssue` from this skill; the necessary write tools are intentionally not in `allowed-tools`.
|
|
9
|
+
Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans structure only — every individual ticket write is delegated to `lisa:jira-write-ticket`.** Do not call `mcp__atlassian__createJiraIssue` from this skill; the necessary write tools are intentionally not in `allowed-tools`.
|
|
10
10
|
|
|
11
11
|
## Process
|
|
12
12
|
|
|
13
13
|
1. **Analyze**: Read $ARGUMENTS to understand scope.
|
|
14
|
-
2. **Extract source artifacts**: invoke the `jira-source-artifacts` skill, then enumerate every external URL, embed, attachment, or example payload and classify each by domain per its rules. Build the `artifacts` map. See "Source Artifacts" below.
|
|
15
|
-
3. **Walk the live product** (when applicable): if the work touches existing user-facing surfaces, invoke the `product-walkthrough` skill to capture current behavior, design-vs-product divergence, and reuse candidates. Skip only when the work is purely backend or affects a screen that does not yet exist. See "Live Product Walkthrough" below.
|
|
14
|
+
2. **Extract source artifacts**: invoke the `lisa:jira-source-artifacts` skill, then enumerate every external URL, embed, attachment, or example payload and classify each by domain per its rules. Build the `artifacts` map. See "Source Artifacts" below.
|
|
15
|
+
3. **Walk the live product** (when applicable): if the work touches existing user-facing surfaces, invoke the `lisa:product-walkthrough` skill to capture current behavior, design-vs-product divergence, and reuse candidates. Skip only when the work is purely backend or affects a screen that does not yet exist. See "Live Product Walkthrough" below.
|
|
16
16
|
4. **Determine structure**:
|
|
17
17
|
- Epic needed if: multiple features, major changes, >3 related files
|
|
18
18
|
- Direct tasks if: bug fix, single file, minor change
|
|
@@ -20,8 +20,8 @@ Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans struc
|
|
|
20
20
|
```text
|
|
21
21
|
Epic → User Story → Tasks (test, implement, document, cleanup)
|
|
22
22
|
```
|
|
23
|
-
6. **Delegate every write to `jira-write-ticket`** in dependency order (epic first, then stories with the epic as parent, then sub-tasks with their story as parent). Pass the artifacts (filtered by domain per `jira-source-artifacts` inheritance rules) and the walkthrough findings (under `## Current Product`). See "Delegation to jira-write-ticket" below.
|
|
24
|
-
7. **Run the artifact preservation gate** (`jira-source-artifacts` §8): after all writes complete, build the preservation matrix and verify every extracted artifact is reachable from the created tickets. Fail loudly if anything was dropped.
|
|
23
|
+
6. **Delegate every write to `lisa:jira-write-ticket`** in dependency order (epic first, then stories with the epic as parent, then sub-tasks with their story as parent). Pass the artifacts (filtered by domain per `lisa:jira-source-artifacts` inheritance rules) and the walkthrough findings (under `## Current Product`). See "Delegation to jira-write-ticket" below.
|
|
24
|
+
7. **Run the artifact preservation gate** (`lisa:jira-source-artifacts` §8): after all writes complete, build the preservation matrix and verify every extracted artifact is reachable from the created tickets. Fail loudly if anything was dropped.
|
|
25
25
|
|
|
26
26
|
## Mandatory for Every Code Issue
|
|
27
27
|
|
|
@@ -35,15 +35,15 @@ Analyze the provided file(s) and plan a JIRA hierarchy. **This skill plans struc
|
|
|
35
35
|
|
|
36
36
|
If $ARGUMENTS includes (or references) any external artifact — PRD, design doc, Figma URL, Lovable prototype, Loom walkthrough, screenshot, example payload — those references MUST be preserved as remote links on the created tickets. Silent artifact loss is the single most common quality failure in this pipeline.
|
|
37
37
|
|
|
38
|
-
**Invoke the `jira-source-artifacts` skill** for the canonical rules: domains, per-tool classification (Figma `/proto/` vs design, Lovable, Loom, screenshots), source precedence, conflict handling under `## Open Questions`, inheritance from epic → story → sub-task, and the existing-component reuse expectation. Do not restate the rules here.
|
|
38
|
+
**Invoke the `lisa:jira-source-artifacts` skill** for the canonical rules: domains, per-tool classification (Figma `/proto/` vs design, Lovable, Loom, screenshots), source precedence, conflict handling under `## Open Questions`, inheritance from epic → story → sub-task, and the existing-component reuse expectation. Do not restate the rules here.
|
|
39
39
|
|
|
40
40
|
Rails-specific note: the existing-component reuse rule applies to view partials and ViewComponents — the closest existing partial/component is usually the right answer over pixel-matching a mock from scratch.
|
|
41
41
|
|
|
42
|
-
When delegating writes to `jira-write-ticket`, pass the extracted artifact list so its Phase 4c step can attach them.
|
|
42
|
+
When delegating writes to `lisa:jira-write-ticket`, pass the extracted artifact list so its Phase 4c step can attach them.
|
|
43
43
|
|
|
44
44
|
## Live Product Walkthrough
|
|
45
45
|
|
|
46
|
-
When the work touches existing user-facing surfaces, invoke the `product-walkthrough` skill before drafting tickets. Findings (current behavior, design-vs-product divergence, reuse candidates, behavioral surprises) become inputs to the ticket plan and surface under `## Current Product` on the resulting tickets. Skip only when the work is purely backend or affects a screen that does not yet exist.
|
|
46
|
+
When the work touches existing user-facing surfaces, invoke the `lisa:product-walkthrough` skill before drafting tickets. Findings (current behavior, design-vs-product divergence, reuse candidates, behavioral surprises) become inputs to the ticket plan and surface under `## Current Product` on the resulting tickets. Skip only when the work is purely backend or affects a screen that does not yet exist.
|
|
47
47
|
|
|
48
48
|
## Issue Requirements
|
|
49
49
|
|
|
@@ -58,9 +58,9 @@ Exclude unless requested: migration plans, performance tests
|
|
|
58
58
|
|
|
59
59
|
## Delegation to jira-write-ticket
|
|
60
60
|
|
|
61
|
-
**Mandatory.** Every ticket created by this skill MUST go through `jira-write-ticket`. This skill never calls `mcp__atlassian__createJiraIssue` itself — that tool is intentionally excluded from `allowed-tools` so the gate cannot be bypassed.
|
|
61
|
+
**Mandatory.** Every ticket created by this skill MUST go through `lisa:jira-write-ticket`. This skill never calls `mcp__atlassian__createJiraIssue` itself — that tool is intentionally excluded from `allowed-tools` so the gate cannot be bypassed.
|
|
62
62
|
|
|
63
|
-
`jira-write-ticket` enforces things this skill does not, and which determine ticket quality:
|
|
63
|
+
`lisa:jira-write-ticket` enforces things this skill does not, and which determine ticket quality:
|
|
64
64
|
- 3-audience description (Context / Technical Approach / Acceptance Criteria)
|
|
65
65
|
- Gherkin acceptance criteria
|
|
66
66
|
- Epic parent validation (non-bug, non-epic types)
|
|
@@ -74,9 +74,9 @@ Exclude unless requested: migration plans, performance tests
|
|
|
74
74
|
|
|
75
75
|
Tickets must be created in parent-before-child order so each child can be passed its parent key:
|
|
76
76
|
|
|
77
|
-
1. Invoke `jira-write-ticket` for the epic. Capture the returned key.
|
|
78
|
-
2. For each story, invoke `jira-write-ticket` with the epic key as the epic parent. Capture each story key.
|
|
79
|
-
3. For each sub-task, invoke `jira-write-ticket` with the parent story key.
|
|
77
|
+
1. Invoke `lisa:jira-write-ticket` for the epic. Capture the returned key.
|
|
78
|
+
2. For each story, invoke `lisa:jira-write-ticket` with the epic key as the epic parent. Capture each story key.
|
|
79
|
+
3. For each sub-task, invoke `lisa:jira-write-ticket` with the parent story key.
|
|
80
80
|
|
|
81
81
|
### What to pass to each invocation
|
|
82
82
|
|
|
@@ -85,8 +85,8 @@ For every delegated write, pass:
|
|
|
85
85
|
- The 3-section description body you drafted (Context / Technical Approach / Acceptance Criteria)
|
|
86
86
|
- Gherkin acceptance criteria
|
|
87
87
|
- Parent key (epic key for stories; story key for sub-tasks)
|
|
88
|
-
- The artifact list extracted in "Source Artifacts", filtered by domain per the inheritance rules — `jira-write-ticket` Phase 4c attaches them as remote links
|
|
89
|
-
- For tickets that change runtime behavior: the Validation Journey draft, or instruct it to call `jira-add-journey` after create
|
|
88
|
+
- The artifact list extracted in "Source Artifacts", filtered by domain per the inheritance rules — `lisa:jira-write-ticket` Phase 4c attaches them as remote links
|
|
89
|
+
- For tickets that change runtime behavior: the Validation Journey draft, or instruct it to call `lisa:jira-add-journey` after create
|
|
90
90
|
|
|
91
91
|
### What this skill is responsible for
|
|
92
92
|
|
|
@@ -97,4 +97,4 @@ This skill owns:
|
|
|
97
97
|
- Threading parent keys through subsequent writes
|
|
98
98
|
- Running the artifact preservation check after all writes complete
|
|
99
99
|
|
|
100
|
-
It does not own the actual JIRA write — that's `jira-write-ticket`'s job.
|
|
100
|
+
It does not own the actual JIRA write — that's `lisa:jira-write-ticket`'s job.
|
|
@@ -6,20 +6,20 @@ allowed-tools: ["Skill", "mcp__atlassian__getJiraIssue", "mcp__atlassian__getAcc
|
|
|
6
6
|
|
|
7
7
|
# Verify JIRA Ticket: $ARGUMENTS
|
|
8
8
|
|
|
9
|
-
Verify that the existing JIRA ticket `$ARGUMENTS` meets organizational standards. This skill is a thin post-write wrapper around `jira-validate-ticket`: it fetches the live ticket and asks `jira-validate-ticket` to run the gates against the fetched state.
|
|
9
|
+
Verify that the existing JIRA ticket `$ARGUMENTS` meets organizational standards. This skill is a thin post-write wrapper around `lisa:jira-validate-ticket`: it fetches the live ticket and asks `lisa:jira-validate-ticket` to run the gates against the fetched state.
|
|
10
10
|
|
|
11
|
-
This indirection exists so the gate definitions live in exactly one place (`jira-validate-ticket`). When the bar changes, change it there — `jira-verify`, `jira-write-ticket` (Phase 5.5 pre-write), and `notion-to-jira` (PRD dry-run) all pick it up.
|
|
11
|
+
This indirection exists so the gate definitions live in exactly one place (`lisa:jira-validate-ticket`). When the bar changes, change it there — `lisa:jira-verify`, `lisa:jira-write-ticket` (Phase 5.5 pre-write), and `lisa:notion-to-jira` (PRD dry-run) all pick it up.
|
|
12
12
|
|
|
13
13
|
## Process
|
|
14
14
|
|
|
15
15
|
1. Resolve cloud ID via `mcp__atlassian__getAccessibleAtlassianResources`.
|
|
16
16
|
2. Fetch the ticket via `mcp__atlassian__getJiraIssue` for `$ARGUMENTS`.
|
|
17
|
-
3. Invoke `jira-validate-ticket` and pass the ticket key. The validator runs every gate (Specification + Feasibility) against the live state.
|
|
17
|
+
3. Invoke `lisa:jira-validate-ticket` and pass the ticket key. The validator runs every gate (Specification + Feasibility) against the live state.
|
|
18
18
|
4. Surface the validator's report verbatim.
|
|
19
19
|
|
|
20
20
|
## Output
|
|
21
21
|
|
|
22
|
-
Pass through `jira-validate-ticket`'s structured output unchanged. Downstream callers parse the gate lines.
|
|
22
|
+
Pass through `lisa:jira-validate-ticket`'s structured output unchanged. Downstream callers parse the gate lines.
|
|
23
23
|
|
|
24
24
|
## Notes
|
|
25
25
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: "Implement a work item end-to-end. Vendor-agnostic
|
|
3
|
-
argument-hint: "<work-item-url | key | description>"
|
|
2
|
+
description: "Implement a single work item end-to-end. Vendor-agnostic: given a work-item URL/key (JIRA, Linear, GitHub Issues) or description, reads it, determines work type (Build/Fix/Improve/Investigate), assembles an agent team, runs the full lifecycle through PR + evidence. For batch processing of all Status=Ready tickets in a queue, use /lisa:intake instead."
|
|
3
|
+
argument-hint: "<single-work-item-url | key | description>"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
Use the /lisa:implement skill to take
|
|
6
|
+
Use the /lisa:implement skill to take the work item from spec to shipped: read the source, determine work type, assemble an agent team, and run the full lifecycle through PR creation, code review, deploy, and empirical verification. $ARGUMENTS
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Vendor-agnostic batch scanner for Status=Ready queues. Notion PRD database URL → finds Ready PRDs and runs lisa:plan per item. JIRA project key or JQL → finds Ready tickets and runs lisa:implement per item. Designed as the cron target for /schedule."
|
|
3
|
+
argument-hint: "<Notion-PRD-database-URL | JIRA-project-key | JQL-filter>"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use the /lisa:intake skill to scan the queue for Status=Ready items and dispatch each one through the appropriate single-item lifecycle skill. $ARGUMENTS
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: "Monitor application health.
|
|
2
|
+
description: "Monitor application health across environments. Health endpoints, recent logs, error-rate spikes, performance, optional browser UAT. Routes to the stack-specific ops-specialist."
|
|
3
3
|
argument-hint: "[environment]"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
This sub-flow is also invoked as part of the Verify flow's remote verification step. Delegates to `ops-specialist` for health checks, log inspection, error monitoring, and performance analysis.
|
|
9
|
-
|
|
10
|
-
$ARGUMENTS
|
|
6
|
+
Use the /lisa:monitor skill to check application health, logs, errors, and performance for the named environment. $ARGUMENTS
|
|
@@ -1,26 +1,6 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: "Plan work
|
|
3
|
-
argument-hint: "<PRD-url | @file | ticket-id-or-url | description>"
|
|
2
|
+
description: "Plan work from a single PRD or specification. Decomposes into ordered work items in the configured tracker. For batch scanning of all Status=Ready PRDs in a queue, use /lisa:intake instead."
|
|
3
|
+
argument-hint: "<single-PRD-url | @file | ticket-id-or-url | description>"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
**Orchestration: agent team.** Plan is a multi-specialist flow feeding a shared decomposition. After echoing the flow and orchestration mode, your FIRST tool call MUST be `TeamCreate`. Do not call `TaskCreate`, `Agent`, or implementation tools before the team exists.
|
|
9
|
-
|
|
10
|
-
## Source dispatch
|
|
11
|
-
|
|
12
|
-
Detect the source type from `$ARGUMENTS` and route accordingly. The Plan flow is vendor-agnostic — the public interface speaks "PRD" and "work items", not "Notion" or "JIRA".
|
|
13
|
-
|
|
14
|
-
| If `$ARGUMENTS` is... | Hand off to |
|
|
15
|
-
|------------------------|-------------|
|
|
16
|
-
| A Notion URL (`notion.so/...` or a Notion database/page ID) | The `notion-prd-intake` skill (single-PRD mode if one page; database-scan mode if a database URL). It runs the full pipeline: extract artifacts, walk live product, dry-run validate, create tickets in the configured tracker, run the coverage audit, transition Notion `Status`. |
|
|
17
|
-
| A JIRA ticket ID or URL (e.g. `SE-123` or `*.atlassian.net/browse/SE-123`) | The `jira-agent`, which reads the ticket and extracts context. (Used when an existing JIRA epic *is* the spec — Plan decomposes it into stories/sub-tasks.) |
|
|
18
|
-
| A Linear / GitHub Issues URL or key | *Not yet implemented.* Stop and tell the user the adapter doesn't exist yet — the architecture supports it, but no `linear-prd-intake` / `github-prd-intake` skill has been built. Don't fall back. |
|
|
19
|
-
| A file path (`@plan.md`, `./spec.md`) | Read the file as the spec; run the Plan flow's core decomposition with the file content as input. |
|
|
20
|
-
| A plain-text description | Use the description as the spec; run the Plan flow's core decomposition. |
|
|
21
|
-
|
|
22
|
-
If no PRD or specification exists, suggest running the **Research** flow first to produce one.
|
|
23
|
-
|
|
24
|
-
The underlying intake skills (e.g. `notion-prd-intake`) are internal — developers don't invoke them directly. They speak in vendor-agnostic terms (`/plan <PRD>`); the source/tracker choice is config.
|
|
25
|
-
|
|
26
|
-
$ARGUMENTS
|
|
6
|
+
Use the /lisa:plan skill to decompose the PRD/spec into ordered work items in the configured tracker. $ARGUMENTS
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: "Research a problem space and produce a PRD. Investigates codebase, defines user flows, assesses technical feasibility."
|
|
2
|
+
description: "Research a problem space and produce a PRD. Investigates the codebase, defines user flows, assesses technical feasibility, and outputs a specification ready for the Plan flow."
|
|
3
3
|
argument-hint: "<problem-statement-or-feature-idea>"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
**Orchestration: agent team.** Research is a multi-specialist flow feeding a shared PRD. After echoing the flow and orchestration mode, your FIRST tool call MUST be `TeamCreate`. Do not call `TaskCreate`, `Agent`, or implementation tools before the team exists.
|
|
9
|
-
|
|
10
|
-
$ARGUMENTS
|
|
6
|
+
Use the /lisa:research skill to research the problem and produce a PRD. $ARGUMENTS
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: "Ship and verify code. Commits, opens PR, handles review loop, merges,
|
|
2
|
+
description: "Ship and verify code. Commits, opens PR, handles review loop, merges, monitors deploy, and runs remote verification in target environment. Folds in /ship."
|
|
3
3
|
argument-hint: "[commit-message-hint]"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
This includes: atomic commits, PR creation, CI/review-fix loop, merge, deploy monitoring, and remote verification.
|
|
9
|
-
|
|
10
|
-
$ARGUMENTS
|
|
6
|
+
Use the /lisa:verify skill to commit, push, PR, merge, deploy, and verify in the target environment. $ARGUMENTS
|
|
@@ -8,7 +8,7 @@ Each flow has a readiness gate that MUST pass before work begins. If the gate fa
|
|
|
8
8
|
|
|
9
9
|
This protocol runs **once per session**, on the first user message. After that, every later message inherits the established flow — do not re-run classification.
|
|
10
10
|
|
|
11
|
-
1. If the user invoked a slash command (`/
|
|
11
|
+
1. If the user invoked a slash command (`/lisa:research`, `/lisa:plan`, `/lisa:implement`, `/lisa:verify`, `/lisa:monitor`, `/lisa:intake`, etc.), the flow is already determined -- skip classification.
|
|
12
12
|
2. Read the user's request and match it against the flow definitions below.
|
|
13
13
|
3. If you cannot confidently classify the request:
|
|
14
14
|
- **Interactive session** (user is present): present a multiple choice using AskUserQuestion with options: Research, Plan, Implement, Verify, No flow.
|
|
@@ -23,16 +23,20 @@ This protocol runs **once per session**, on the first user message. After that,
|
|
|
23
23
|
|
|
24
24
|
## Orchestration Selection Protocol
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
Orchestration is owned by the **lifecycle skill** for the chosen flow, not by this rule. Each top-level lifecycle skill (`lisa:research`, `lisa:plan`, `lisa:implement`, `lisa:verify`, `lisa:monitor`, `lisa:intake`) contains its own cascade-safe orchestration preamble — that's where the team is created (or skipped, if already inside one).
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
> One-sentence justification.
|
|
28
|
+
What this rule still enforces:
|
|
30
29
|
|
|
31
|
-
|
|
30
|
+
1. **Echo orchestration mode immediately after echoing the flow** (in the same message), so the user sees both before any work begins:
|
|
32
31
|
|
|
33
|
-
|
|
32
|
+
> **Orchestration: agent team** (or **single agent**)
|
|
33
|
+
> One-sentence justification.
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
2. **Cascade rule (load-bearing)**: Before calling `TeamCreate`, check whether you are already operating inside an agent team. Signs you are inside a team: a prior `TeamCreate` exists in this session; you were spawned via `Agent` with `team_name`; your context references a team lead. If any of these are true, **do NOT call `TeamCreate`** — the harness rejects double-creates and the work stalls. Continue within the existing team. Invoke flows via the Skill tool; the team lead inherits responsibility for orchestration.
|
|
36
|
+
|
|
37
|
+
3. **Default mode**: All top-level lifecycle flows (`Research`, `Plan`, `Implement`, `Verify`, `Monitor`, `Intake`) run as agent teams. Single-agent mode is reserved for diagnostics that don't compose multiple specialists (`product-walkthrough` standalone, ad-hoc Investigate-Only spikes that explicitly opt out). When in doubt, use a team.
|
|
38
|
+
|
|
39
|
+
The mechanical "first tool call MUST be TeamCreate" directive lives inside each lifecycle skill — see those skills' orchestration preambles for the exact wording.
|
|
36
40
|
|
|
37
41
|
## Readiness Gate Protocol
|
|
38
42
|
|
|
@@ -59,7 +63,6 @@ Gate:
|
|
|
59
63
|
- If none is provided, ask: "What problem are you trying to solve or what capability are you trying to add?"
|
|
60
64
|
|
|
61
65
|
Sequence:
|
|
62
|
-
0. **Create agent team via `TeamCreate`** (see Orchestration section) -- Research is a multi-specialist flow; do this before any other work.
|
|
63
66
|
1. **Investigate sub-flow** -- gather context from codebase, git history, existing behavior, and external sources
|
|
64
67
|
2. `product-specialist` -- define user goals, user flows (Gherkin), acceptance criteria, error states, UX concerns, and out-of-scope items
|
|
65
68
|
3. `architecture-specialist` -- assess technical feasibility, identify constraints, map existing system boundaries
|
|
@@ -80,7 +83,6 @@ Gate:
|
|
|
80
83
|
- If the specification has unresolved ambiguities, stop and list them
|
|
81
84
|
|
|
82
85
|
Sequence:
|
|
83
|
-
0. **Create agent team via `TeamCreate`** (see Orchestration section) -- Plan is a multi-specialist flow feeding a shared decomposition; do this before any other work.
|
|
84
86
|
1. **Investigate sub-flow** -- explore codebase for architecture, patterns, dependencies relevant to the spec
|
|
85
87
|
2. `product-specialist` -- validate and refine acceptance criteria for the whole scope
|
|
86
88
|
3. `architecture-specialist` -- map dependencies, identify cross-cutting concerns, determine execution order
|
|
@@ -110,7 +112,6 @@ Determine the work type and execute the matching variant:
|
|
|
110
112
|
|
|
111
113
|
#### Build (features, stories, tasks)
|
|
112
114
|
|
|
113
|
-
0. **Create agent team via `TeamCreate`** (see Orchestration section) -- Build runs a long sequence with parallel review; do this before any other work.
|
|
114
115
|
1. **Investigate sub-flow** -- explore codebase for related code, patterns, dependencies
|
|
115
116
|
2. `product-specialist` -- define acceptance criteria, user flows, error states
|
|
116
117
|
3. `architecture-specialist` -- design approach, map files to modify, identify reusable code
|
|
@@ -124,7 +125,6 @@ Determine the work type and execute the matching variant:
|
|
|
124
125
|
|
|
125
126
|
#### Fix (bugs)
|
|
126
127
|
|
|
127
|
-
0. **Create agent team via `TeamCreate`** (see Orchestration section) -- Fix runs a long sequence with parallel review; do this before any other work.
|
|
128
128
|
1. **Reproduce sub-flow** -- write failing test or script that demonstrates the bug (MANDATORY before any fix is attempted)
|
|
129
129
|
2. **Investigate sub-flow** -- git history, root cause analysis
|
|
130
130
|
3. `debug-specialist` -- prove root cause with evidence
|
|
@@ -139,7 +139,6 @@ Determine the work type and execute the matching variant:
|
|
|
139
139
|
|
|
140
140
|
#### Improve (refactoring, optimization, coverage improvement)
|
|
141
141
|
|
|
142
|
-
0. **Create agent team via `TeamCreate`** (see Orchestration section) -- Improve runs a long sequence with parallel review; do this before any other work.
|
|
143
142
|
1. **Investigate sub-flow** -- understand current state, measure baseline
|
|
144
143
|
2. `architecture-specialist` -- identify target, plan approach
|
|
145
144
|
3. `test-specialist` -- ensure existing test coverage before refactoring (safety net)
|
|
@@ -274,7 +273,9 @@ Flows reference sub-flows by name. When a flow says "Investigate sub-flow", exec
|
|
|
274
273
|
|
|
275
274
|
## Orchestration
|
|
276
275
|
|
|
277
|
-
|
|
276
|
+
> **Note**: Orchestration authority belongs to lifecycle skills (see `## Orchestration Selection Protocol` above). This section documents the patterns that lifecycle skills implement — it is reference material, not a directive for this rule to choose modes independently.
|
|
277
|
+
|
|
278
|
+
Lifecycle skills dispatch their agents according to the flow's shape. The following patterns are how they do it — do not default to the heaviest one.
|
|
278
279
|
|
|
279
280
|
### Agent Teams (default for multi-step flows)
|
|
280
281
|
|
|
@@ -3,17 +3,32 @@ name: implement
|
|
|
3
3
|
description: This skill should be used for any non-trivial request — features, bugs, stories, epics, spikes, or multi-step tasks. It accepts a ticket URL (Jira, Linear, GitHub), a file path containing a spec, or a plain-text prompt. It assembles an agent team, breaks the work into structured tasks, and manages the full lifecycle from research through implementation, code review, deploy, and empirical verification.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
# Implement: $ARGUMENTS
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
## Orchestration: agent team
|
|
8
9
|
|
|
9
|
-
If
|
|
10
|
+
If you are NOT already operating inside an agent team (no prior `TeamCreate` in this session, not spawned via `Agent` with `team_name`), your FIRST tool call MUST be `TeamCreate`. Do not call `TaskCreate`, `Agent`, or implementation tools before the team exists.
|
|
10
11
|
|
|
11
|
-
If
|
|
12
|
+
If you ARE already inside an agent team (e.g., a teammate invoked this skill via the Skill tool, or `lisa:intake` is running this skill per Ready ticket), do NOT call `TeamCreate` — the harness rejects double-creates. Continue within the existing team. The team lead created the team; teammates inherit it.
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
When you do create the team, spawn every agent with `mode: "plan"` so they must submit their plan for team lead approval before making any file changes. Every team must include the Explore agent.
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
## Resolve the input
|
|
16
17
|
|
|
18
|
+
$ARGUMENTS is either a url to a ticket containing the request, a pointer to a file containing the request, or the request in text format.
|
|
19
|
+
|
|
20
|
+
If it's a ticket, use the appropriate vendor adapter to read and fully understand the request:
|
|
21
|
+
- JIRA ticket → `lisa:jira-read-ticket` (preferred) or the Jira CLI
|
|
22
|
+
- Linear ticket → the Linear CLI (no `lisa:linear-*` adapter built yet)
|
|
23
|
+
- GitHub ticket → the Github CLI
|
|
24
|
+
|
|
25
|
+
Capture comments and metadata, not just the description.
|
|
26
|
+
|
|
27
|
+
If it's a file, read the entire file without offset or limit.
|
|
28
|
+
|
|
29
|
+
If this is a simple, self-contained request that requires no complex orchestration, execute it directly within the current team context and skip the agent roster and task planning below.
|
|
30
|
+
|
|
31
|
+
## Select the agent roster
|
|
17
32
|
|
|
18
33
|
Review all available agent types listed in the Task tool's `subagent_type` options. This includes built-in agents (like `Explore`, `general-purpose`), custom agents (from `.claude/agents/`), and plugin agents (from `.claude/settings.json` `enabledPlugins`). For each agent, explain in one sentence why it IS or IS NOT relevant to this task. Then select all agents that are relevant. You MUST justify excluding an agent — inclusion is the default.
|
|
19
34
|
|
|
@@ -22,12 +37,6 @@ When deciding the agents to use, consider:
|
|
|
22
37
|
* Each task must be reviewed by the team to make sure their verification passes.
|
|
23
38
|
* Each task must have their learnings reviewed by the learner subagent.
|
|
24
39
|
|
|
25
|
-
NOTE: Every team must include the Explore agent
|
|
26
|
-
|
|
27
|
-
Create an agent team composed of the selected agents. Spawn every agent with `mode: "plan"` so they must submit their plan for team lead approval before making any file changes.
|
|
28
|
-
|
|
29
|
-
Use the TeamCreate tool to create the team before doing anything else.
|
|
30
|
-
|
|
31
40
|
Using the general-purpose agent in Team Lead session, Determine the name of this plan
|
|
32
41
|
|
|
33
42
|
Using the general-purpose agent in Team Lead session, Determine what branch to use:
|