@codyswann/lisa 2.52.0 → 2.54.0
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/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa/commands/project-ideation.md +6 -0
- package/plugins/lisa/skills/project-ideation/SKILL.md +127 -0
- package/plugins/lisa/skills/project-ideation/agents/openai.yaml +4 -0
- package/plugins/lisa/skills/project-ideation/examples/evidence-card-format.md +21 -0
- package/plugins/lisa/skills/project-ideation/examples/host-project-only.md +22 -0
- package/plugins/lisa/skills/project-ideation/examples/public-external-inspiration.md +22 -0
- package/plugins/lisa/skills/project-ideation/examples/unavailable-data-rejection.md +22 -0
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/src/base/commands/project-ideation.md +6 -0
- package/plugins/src/base/skills/project-ideation/SKILL.md +127 -0
- package/plugins/src/base/skills/project-ideation/examples/evidence-card-format.md +21 -0
- package/plugins/src/base/skills/project-ideation/examples/host-project-only.md +22 -0
- package/plugins/src/base/skills/project-ideation/examples/public-external-inspiration.md +22 -0
- package/plugins/src/base/skills/project-ideation/examples/unavailable-data-rejection.md +22 -0
package/package.json
CHANGED
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
"lodash": ">=4.18.1"
|
|
83
83
|
},
|
|
84
84
|
"name": "@codyswann/lisa",
|
|
85
|
-
"version": "2.
|
|
85
|
+
"version": "2.54.0",
|
|
86
86
|
"description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
|
|
87
87
|
"main": "dist/index.js",
|
|
88
88
|
"exports": {
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Generate practical, verifiable product or workflow ideas for the current host project. Inspects code, docs, data sources, and current surfaces (and optionally an external public product), then returns a prioritized report separating build-ready ideas from discovery spikes and rejected ones. Every build-ready idea must have an obtainable data/source path and an empirical verification plan."
|
|
3
|
+
argument-hint: "[target project path or external product to compare against]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use the /lisa:project-ideation skill to generate a decision-ready idea report for the host project. $ARGUMENTS
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: project-ideation
|
|
3
|
+
description: "Generate practical, verifiable product or workflow ideas for the current host project. Inspects the host project (code, docs, scripts, data sources, current surfaces), optionally compares against external public products, and returns a prioritized idea report. Every build-ready idea must pass a practicality gate (an obtainable data/source path the project can plausibly implement) and an empirical verification gate (a user-observable outcome the agent can verify itself). Ideas that fail either gate are demoted to Discovery Spikes or Rejected / Not Practical Yet. Invoke for prompts like 'generate feature ideas for this project', 'looking at <external product>, what should we add here?', 'suggest practical improvements we can verify ourselves', or 'what should this app do next given the data we can get?'. Vendor- and stack-agnostic: works for web apps, APIs, CLIs, wiki systems, data pipelines, and internal tools. Does not create tickets or mutate the project — it produces a decision-ready report the user can later hand to a Research, Plan, or Implement flow."
|
|
4
|
+
allowed-tools: ["Skill", "Bash", "Read", "Glob", "Grep", "WebFetch", "WebSearch"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Project Ideation
|
|
8
|
+
|
|
9
|
+
Produce a decision-ready idea report for the host project described in `$ARGUMENTS` (or the current working directory if no target is given). The report separates ideas that are **build-ready now** from ideas that need a **discovery spike** and ideas that are **rejected / not practical yet**.
|
|
10
|
+
|
|
11
|
+
The value of this skill is **filtering**, not brainstorming volume. An attractive idea you cannot ground in obtainable data and cannot verify yourself is not a recommendation — it is noise. Demote it honestly.
|
|
12
|
+
|
|
13
|
+
## When to use
|
|
14
|
+
|
|
15
|
+
Trigger this skill on prompts such as:
|
|
16
|
+
|
|
17
|
+
- "generate feature ideas for this project"
|
|
18
|
+
- "looking at <external product / website>, what should we add here?"
|
|
19
|
+
- "suggest practical improvements we can verify ourselves"
|
|
20
|
+
- "what should this app do next given the data we can get?"
|
|
21
|
+
- "what high-value features could we add to <repo>?"
|
|
22
|
+
|
|
23
|
+
Do **not** use this skill to create tickets, write a PRD, or change code. It stops at a report. The user can then ask Lisa to turn one or more ideas into a PRD (`/lisa:research`), a plan (`/lisa:plan`), or an implementation (`/lisa:implement`).
|
|
24
|
+
|
|
25
|
+
## Two gates every build-ready idea must pass
|
|
26
|
+
|
|
27
|
+
An idea may only appear under **Practical Ideas** if it passes BOTH gates. Otherwise demote it.
|
|
28
|
+
|
|
29
|
+
1. **Practicality gate.** The project can plausibly implement the idea from sources that are actually available: existing code, an existing data model, a route/command/UI surface, a public or already-integrated API, a scrapeable public page, an existing user input, a local database, or documented integrations. You must be able to name the specific source and how the data is obtained. "We could probably get the data somehow" fails the gate.
|
|
30
|
+
2. **Empirical verification gate.** You can personally confirm the resulting behavior by using the software or workflow — running the CLI, hitting the API, loading the page, querying the database, or inspecting a generated artifact — and capture a concrete evidence artifact. Saying "tests could be written later" does **not** satisfy this gate. Quality gates (tests, lint, typecheck, build) are prerequisites, never proof that an idea works.
|
|
31
|
+
|
|
32
|
+
If an idea fails the practicality gate → it goes under **Rejected / Not Practical Yet** (or **Discovery Spikes** if a bounded probe could make it practical), with the missing data/source/access named explicitly.
|
|
33
|
+
|
|
34
|
+
If an idea fails only the empirical verification gate → it goes under **Discovery Spikes** (define the missing proof) or stays as a strategic note, never as a build-ready recommendation.
|
|
35
|
+
|
|
36
|
+
## Step 1 — Establish host-project context (always first)
|
|
37
|
+
|
|
38
|
+
Never propose ideas before you understand what exists. Inspect the host project and record:
|
|
39
|
+
|
|
40
|
+
- **Project type and package manager** — read the manifests (`package.json`, `pyproject.toml`, `go.mod`, `Cargo.toml`, `Gemfile`, etc.) and any `.lisa.config.json`.
|
|
41
|
+
- **Docs and specs** — `README`, `docs/`, `wiki/`, architecture notes, ADRs.
|
|
42
|
+
- **Current product surfaces or commands** — routes, screens, CLI subcommands, API endpoints, scheduled jobs, generated artifacts.
|
|
43
|
+
- **Data model and existing user inputs** — schemas, migrations, forms, config the user already supplies.
|
|
44
|
+
- **Available data sources and ingestion/scraping paths** — integrated APIs, public datasets, scrapeable public pages, local databases, event streams.
|
|
45
|
+
- **Existing verification tooling and empirical paths** — how a human currently observes that the software works (a local dev server, a CLI you can run, a seedable DB, a dry-run mode).
|
|
46
|
+
|
|
47
|
+
Use Lisa's existing methodology rather than inventing a parallel flow. Read the host code through the same lens as `/lisa:codebase-research` (trace data flow, find reusable code, identify modification points). When the request references an external product, use web/browser research; when the ideas would touch a live UI, use `/lisa:product-walkthrough` to ground the analysis in what exists today.
|
|
48
|
+
|
|
49
|
+
## Step 2 — Optional external / public-source inspection
|
|
50
|
+
|
|
51
|
+
Only when the user references an external product, website, public dataset, competitor, or example:
|
|
52
|
+
|
|
53
|
+
- Inspect **public, no-login** surfaces only. Do not assume sign-in, credentials, or paid access.
|
|
54
|
+
- Preserve every **source URL** you used so each informed idea can cite it.
|
|
55
|
+
- If the runtime has no browser or web capability, mark that research source as **unavailable** and proceed with host-project-only ideas (document the fallback rather than fabricating findings).
|
|
56
|
+
|
|
57
|
+
The external source is **inspiration, not a domain you bake in**. Keep the workflow reusable across any Lisa-managed repository.
|
|
58
|
+
|
|
59
|
+
## Step 3 — Generate ideas, then filter through the gates
|
|
60
|
+
|
|
61
|
+
Brainstorm broadly, then run every idea through both gates from the top of this skill. For each surviving idea, build a **feasibility card** containing at least:
|
|
62
|
+
|
|
63
|
+
- **User/persona value** — why the host project's user would care.
|
|
64
|
+
- **Existing fit** — the current route / API / CLI / model / doc / surface it builds on.
|
|
65
|
+
- **Data/source required** — the specific data the idea consumes.
|
|
66
|
+
- **How the data can be obtained or scraped** — the concrete accessible path (endpoint, query, public page, existing input).
|
|
67
|
+
- **Known source limitations or terms constraints** — rate limits, robots/ToS, staleness, missing fields.
|
|
68
|
+
- **Smallest practical implementation slice** — the minimal useful version.
|
|
69
|
+
- **Empirical verification steps** — what you (the agent) will do against the running app / API / CLI / DB / artifact to confirm it works.
|
|
70
|
+
- **Evidence artifact** — the screenshot, curl output, CLI output, DB row, or generated file the verifier captures.
|
|
71
|
+
- **Confidence** — high | medium | low, with the reason.
|
|
72
|
+
|
|
73
|
+
## Step 4 — Rank and assemble the report
|
|
74
|
+
|
|
75
|
+
Rank build-ready ideas by **user value, feasibility, verification clarity, and project fit**. Emit the report in this shape:
|
|
76
|
+
|
|
77
|
+
```markdown
|
|
78
|
+
## What Already Exists
|
|
79
|
+
- <current surfaces, data, commands, or workflows discovered — so duplicates are not re-proposed>
|
|
80
|
+
|
|
81
|
+
## Practical Ideas
|
|
82
|
+
### 1. <Idea name>
|
|
83
|
+
- User value: <why the host project's user would care>
|
|
84
|
+
- Existing fit: <current route/API/CLI/model/doc/surface it builds on>
|
|
85
|
+
- Data/source path: <specific accessible source or scrape/API path>
|
|
86
|
+
- Practical slice: <smallest useful version>
|
|
87
|
+
- Empirical verification: <steps the agent can perform against the running software>
|
|
88
|
+
- Evidence: <screenshot, curl output, CLI output, DB row, generated file, etc.>
|
|
89
|
+
- Confidence: high|medium|low with reason
|
|
90
|
+
|
|
91
|
+
## Discovery Spikes
|
|
92
|
+
- <ideas that need proof of data, access, or verification before they can be build-ready — name the missing proof>
|
|
93
|
+
|
|
94
|
+
## Rejected / Not Practical Yet
|
|
95
|
+
- <attractive ideas rejected because data, access, legality, or verification is not available — name what is missing>
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Always include the **What Already Exists** section so the user can tell genuinely new ideas from duplicates, and so the report records existing capabilities. Always include both the **Discovery Spikes** and **Rejected / Not Practical Yet** sections (even if empty) so the user can see what was deliberately filtered out and why.
|
|
99
|
+
|
|
100
|
+
## Out of scope (hard rules)
|
|
101
|
+
|
|
102
|
+
- **No sign-in-only ideas** unless the host project already supports sign-in *and* credentials are available.
|
|
103
|
+
- **No private-data assumptions** — do not premise an idea on data the project cannot legitimately obtain.
|
|
104
|
+
- **No manual-data-only requirements** unless the user explicitly accepts manual curation.
|
|
105
|
+
- **No paid-API or non-scrapeable-source ideas** in the build-ready list — demote them with the blocker named.
|
|
106
|
+
- **Tests, lint, typecheck, and build are not the empirical verification plan.** They are prerequisites; the verification plan must observe user-facing behavior.
|
|
107
|
+
- **Do not auto-create tracker tickets or mutate the host project.** Produce the report only; planning and implementation are separate, user-invoked flows.
|
|
108
|
+
- **Do not add a new verification or browser-automation framework** when the host project already has one — reuse it.
|
|
109
|
+
- **Do not overfit to a source example.** Keep the workflow project-agnostic and reusable.
|
|
110
|
+
|
|
111
|
+
## Handing off
|
|
112
|
+
|
|
113
|
+
When the user wants to act on an idea, preserve its feasibility and verification card as the source artifact so downstream flows inherit the evidence:
|
|
114
|
+
|
|
115
|
+
- Turn an idea into a PRD → `/lisa:research`
|
|
116
|
+
- Turn a PRD into tickets → `/lisa:plan`
|
|
117
|
+
- Build a ticket end-to-end → `/lisa:implement`
|
|
118
|
+
- Lock in the verification so it never regresses → `/lisa:codify-verification`
|
|
119
|
+
|
|
120
|
+
## Example outputs
|
|
121
|
+
|
|
122
|
+
Use the markdown examples in `examples/` as shape references when composing reports:
|
|
123
|
+
|
|
124
|
+
- `host-project-only.md` shows ideas grounded only in the current repository.
|
|
125
|
+
- `public-external-inspiration.md` shows how public, no-login external sources can inspire ideas without becoming hidden requirements.
|
|
126
|
+
- `unavailable-data-rejection.md` shows how to name missing private, paid, or unavailable data sources when demoting ideas.
|
|
127
|
+
- `evidence-card-format.md` shows the required evidence fields every Practical Idea card must carry.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
display_name: "Project Ideation"
|
|
2
|
+
short_description: "Generate practical, verifiable product or workflow ideas for the current host project"
|
|
3
|
+
default_prompt:
|
|
4
|
+
- "Use $project-ideation: Generate practical, verifiable product or workflow ideas for the current host project."
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Evidence Card Formatting Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- Lisa work items already use Validation Journey evidence markers.
|
|
5
|
+
- Skill reports can be saved as markdown artifacts and reviewed by humans.
|
|
6
|
+
|
|
7
|
+
## Practical Ideas
|
|
8
|
+
### 1. Evidence-First Idea Cards
|
|
9
|
+
- User value: A reviewer can decide whether an idea is ready without asking how it will be proven.
|
|
10
|
+
- Existing fit: Uses the project-ideation report shape and Lisa's evidence-first verification rules.
|
|
11
|
+
- Data/source path: Existing local project files plus any public URLs cited in the report.
|
|
12
|
+
- Practical slice: Require each practical idea to include `Empirical verification` and `Evidence` lines before it can remain in the practical list.
|
|
13
|
+
- Empirical verification: Render this example and confirm every practical idea card includes the two evidence fields.
|
|
14
|
+
- Evidence: Text output showing all practical cards pass the field check.
|
|
15
|
+
- Confidence: high because the check is structural and does not require external services.
|
|
16
|
+
|
|
17
|
+
## Discovery Spikes
|
|
18
|
+
- Evidence attachments inside generated reports: needs a storage and retention decision for binary artifacts.
|
|
19
|
+
|
|
20
|
+
## Rejected / Not Practical Yet
|
|
21
|
+
- Treating lint, typecheck, or unit tests as the only proof for a user-facing idea: rejected because quality gates are prerequisites, not empirical evidence artifacts.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Host Project Only Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- CLI command registration is documented in the repository README.
|
|
5
|
+
- Skill sources live under `plugins/src/base/skills/` and are copied into the generated Lisa plugin.
|
|
6
|
+
- The project already has unit tests that verify generated plugin artifacts.
|
|
7
|
+
|
|
8
|
+
## Practical Ideas
|
|
9
|
+
### 1. Plugin Surface Drift Report
|
|
10
|
+
- User value: Maintainers can see which source skills are not represented in the generated plugin before publishing.
|
|
11
|
+
- Existing fit: Builds on the existing plugin source tree and generated plugin artifact tests.
|
|
12
|
+
- Data/source path: Local files under `plugins/src/base/skills/` and `plugins/lisa/skills/`.
|
|
13
|
+
- Practical slice: Emit a markdown report listing source-only, generated-only, and mismatched skill directories.
|
|
14
|
+
- Empirical verification: Run the report command in a clean checkout after intentionally adding one fixture-only source skill.
|
|
15
|
+
- Evidence: CLI output showing the mismatched skill and the generated markdown report path.
|
|
16
|
+
- Confidence: high because the required data is already local and deterministic.
|
|
17
|
+
|
|
18
|
+
## Discovery Spikes
|
|
19
|
+
- Skill usage frequency ranking: needs a bounded source of invocation telemetry before it can be recommended.
|
|
20
|
+
|
|
21
|
+
## Rejected / Not Practical Yet
|
|
22
|
+
- Personalized skill suggestions from private user history: rejected because the repository does not have access to private Codex usage history.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Public External Inspiration Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- The host project already has a command catalog and source-authored skill files.
|
|
5
|
+
- The host project can inspect public documentation pages without sign-in.
|
|
6
|
+
- Existing verification can run through CLI commands and generated markdown artifacts.
|
|
7
|
+
|
|
8
|
+
## Practical Ideas
|
|
9
|
+
### 1. Public Pattern Checklist Import
|
|
10
|
+
- User value: Maintainers can compare their command guidance against public best-practice pages without copying private or paid content.
|
|
11
|
+
- Existing fit: Builds on the current docs and skill authoring workflow.
|
|
12
|
+
- Data/source path: A public, no-login documentation URL supplied by the user, plus local `README.md` and skill files.
|
|
13
|
+
- Practical slice: Generate a checklist of public patterns found in the external page and mark whether each is already represented locally.
|
|
14
|
+
- Empirical verification: Run the ideation workflow against a fixed public URL and inspect the generated checklist.
|
|
15
|
+
- Evidence: Generated markdown containing source URLs, matched local file paths, and unmatched public patterns.
|
|
16
|
+
- Confidence: medium because public pages can change, but the source path is accessible and citeable.
|
|
17
|
+
|
|
18
|
+
## Discovery Spikes
|
|
19
|
+
- Automated freshness checks for public pages: needs a policy for when external pages may be re-fetched and cached.
|
|
20
|
+
|
|
21
|
+
## Rejected / Not Practical Yet
|
|
22
|
+
- Importing examples from a sign-in-only competitor workspace: rejected because the data source is not publicly obtainable.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Unavailable Data Rejection Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- The host project can read local source files, docs, scripts, and generated artifacts.
|
|
5
|
+
- The host project does not expose customer analytics, private support tickets, or paid market datasets.
|
|
6
|
+
|
|
7
|
+
## Practical Ideas
|
|
8
|
+
### 1. Local Verification Gap Finder
|
|
9
|
+
- User value: Maintainers can identify skills that describe empirical verification but do not name an evidence artifact.
|
|
10
|
+
- Existing fit: Builds on local skill markdown files and existing unit tests.
|
|
11
|
+
- Data/source path: Local `SKILL.md` files under the plugin source tree.
|
|
12
|
+
- Practical slice: Scan skill files for verification sections and report entries that mention tests but no observable artifact.
|
|
13
|
+
- Empirical verification: Run the scanner against a fixture skill with one missing evidence line.
|
|
14
|
+
- Evidence: CLI output naming the fixture skill and the missing evidence field.
|
|
15
|
+
- Confidence: high because the input is local and fully inspectable.
|
|
16
|
+
|
|
17
|
+
## Discovery Spikes
|
|
18
|
+
- Prioritize gaps by real-world usage: needs an obtainable telemetry source or a manually approved usage export before it can rank by frequency.
|
|
19
|
+
|
|
20
|
+
## Rejected / Not Practical Yet
|
|
21
|
+
- Recommend ideas from private customer support pain points: rejected because the missing source is a legitimate support-ticket export or configured support integration.
|
|
22
|
+
- Recommend ideas from paid analyst reports: rejected because the missing source is a licensed data feed available to the agent at runtime.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.54.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.54.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, across Claude and Codex.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Generate practical, verifiable product or workflow ideas for the current host project. Inspects code, docs, data sources, and current surfaces (and optionally an external public product), then returns a prioritized report separating build-ready ideas from discovery spikes and rejected ones. Every build-ready idea must have an obtainable data/source path and an empirical verification plan."
|
|
3
|
+
argument-hint: "[target project path or external product to compare against]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use the /lisa:project-ideation skill to generate a decision-ready idea report for the host project. $ARGUMENTS
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: project-ideation
|
|
3
|
+
description: "Generate practical, verifiable product or workflow ideas for the current host project. Inspects the host project (code, docs, scripts, data sources, current surfaces), optionally compares against external public products, and returns a prioritized idea report. Every build-ready idea must pass a practicality gate (an obtainable data/source path the project can plausibly implement) and an empirical verification gate (a user-observable outcome the agent can verify itself). Ideas that fail either gate are demoted to Discovery Spikes or Rejected / Not Practical Yet. Invoke for prompts like 'generate feature ideas for this project', 'looking at <external product>, what should we add here?', 'suggest practical improvements we can verify ourselves', or 'what should this app do next given the data we can get?'. Vendor- and stack-agnostic: works for web apps, APIs, CLIs, wiki systems, data pipelines, and internal tools. Does not create tickets or mutate the project — it produces a decision-ready report the user can later hand to a Research, Plan, or Implement flow."
|
|
4
|
+
allowed-tools: ["Skill", "Bash", "Read", "Glob", "Grep", "WebFetch", "WebSearch"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Project Ideation
|
|
8
|
+
|
|
9
|
+
Produce a decision-ready idea report for the host project described in `$ARGUMENTS` (or the current working directory if no target is given). The report separates ideas that are **build-ready now** from ideas that need a **discovery spike** and ideas that are **rejected / not practical yet**.
|
|
10
|
+
|
|
11
|
+
The value of this skill is **filtering**, not brainstorming volume. An attractive idea you cannot ground in obtainable data and cannot verify yourself is not a recommendation — it is noise. Demote it honestly.
|
|
12
|
+
|
|
13
|
+
## When to use
|
|
14
|
+
|
|
15
|
+
Trigger this skill on prompts such as:
|
|
16
|
+
|
|
17
|
+
- "generate feature ideas for this project"
|
|
18
|
+
- "looking at <external product / website>, what should we add here?"
|
|
19
|
+
- "suggest practical improvements we can verify ourselves"
|
|
20
|
+
- "what should this app do next given the data we can get?"
|
|
21
|
+
- "what high-value features could we add to <repo>?"
|
|
22
|
+
|
|
23
|
+
Do **not** use this skill to create tickets, write a PRD, or change code. It stops at a report. The user can then ask Lisa to turn one or more ideas into a PRD (`/lisa:research`), a plan (`/lisa:plan`), or an implementation (`/lisa:implement`).
|
|
24
|
+
|
|
25
|
+
## Two gates every build-ready idea must pass
|
|
26
|
+
|
|
27
|
+
An idea may only appear under **Practical Ideas** if it passes BOTH gates. Otherwise demote it.
|
|
28
|
+
|
|
29
|
+
1. **Practicality gate.** The project can plausibly implement the idea from sources that are actually available: existing code, an existing data model, a route/command/UI surface, a public or already-integrated API, a scrapeable public page, an existing user input, a local database, or documented integrations. You must be able to name the specific source and how the data is obtained. "We could probably get the data somehow" fails the gate.
|
|
30
|
+
2. **Empirical verification gate.** You can personally confirm the resulting behavior by using the software or workflow — running the CLI, hitting the API, loading the page, querying the database, or inspecting a generated artifact — and capture a concrete evidence artifact. Saying "tests could be written later" does **not** satisfy this gate. Quality gates (tests, lint, typecheck, build) are prerequisites, never proof that an idea works.
|
|
31
|
+
|
|
32
|
+
If an idea fails the practicality gate → it goes under **Rejected / Not Practical Yet** (or **Discovery Spikes** if a bounded probe could make it practical), with the missing data/source/access named explicitly.
|
|
33
|
+
|
|
34
|
+
If an idea fails only the empirical verification gate → it goes under **Discovery Spikes** (define the missing proof) or stays as a strategic note, never as a build-ready recommendation.
|
|
35
|
+
|
|
36
|
+
## Step 1 — Establish host-project context (always first)
|
|
37
|
+
|
|
38
|
+
Never propose ideas before you understand what exists. Inspect the host project and record:
|
|
39
|
+
|
|
40
|
+
- **Project type and package manager** — read the manifests (`package.json`, `pyproject.toml`, `go.mod`, `Cargo.toml`, `Gemfile`, etc.) and any `.lisa.config.json`.
|
|
41
|
+
- **Docs and specs** — `README`, `docs/`, `wiki/`, architecture notes, ADRs.
|
|
42
|
+
- **Current product surfaces or commands** — routes, screens, CLI subcommands, API endpoints, scheduled jobs, generated artifacts.
|
|
43
|
+
- **Data model and existing user inputs** — schemas, migrations, forms, config the user already supplies.
|
|
44
|
+
- **Available data sources and ingestion/scraping paths** — integrated APIs, public datasets, scrapeable public pages, local databases, event streams.
|
|
45
|
+
- **Existing verification tooling and empirical paths** — how a human currently observes that the software works (a local dev server, a CLI you can run, a seedable DB, a dry-run mode).
|
|
46
|
+
|
|
47
|
+
Use Lisa's existing methodology rather than inventing a parallel flow. Read the host code through the same lens as `/lisa:codebase-research` (trace data flow, find reusable code, identify modification points). When the request references an external product, use web/browser research; when the ideas would touch a live UI, use `/lisa:product-walkthrough` to ground the analysis in what exists today.
|
|
48
|
+
|
|
49
|
+
## Step 2 — Optional external / public-source inspection
|
|
50
|
+
|
|
51
|
+
Only when the user references an external product, website, public dataset, competitor, or example:
|
|
52
|
+
|
|
53
|
+
- Inspect **public, no-login** surfaces only. Do not assume sign-in, credentials, or paid access.
|
|
54
|
+
- Preserve every **source URL** you used so each informed idea can cite it.
|
|
55
|
+
- If the runtime has no browser or web capability, mark that research source as **unavailable** and proceed with host-project-only ideas (document the fallback rather than fabricating findings).
|
|
56
|
+
|
|
57
|
+
The external source is **inspiration, not a domain you bake in**. Keep the workflow reusable across any Lisa-managed repository.
|
|
58
|
+
|
|
59
|
+
## Step 3 — Generate ideas, then filter through the gates
|
|
60
|
+
|
|
61
|
+
Brainstorm broadly, then run every idea through both gates from the top of this skill. For each surviving idea, build a **feasibility card** containing at least:
|
|
62
|
+
|
|
63
|
+
- **User/persona value** — why the host project's user would care.
|
|
64
|
+
- **Existing fit** — the current route / API / CLI / model / doc / surface it builds on.
|
|
65
|
+
- **Data/source required** — the specific data the idea consumes.
|
|
66
|
+
- **How the data can be obtained or scraped** — the concrete accessible path (endpoint, query, public page, existing input).
|
|
67
|
+
- **Known source limitations or terms constraints** — rate limits, robots/ToS, staleness, missing fields.
|
|
68
|
+
- **Smallest practical implementation slice** — the minimal useful version.
|
|
69
|
+
- **Empirical verification steps** — what you (the agent) will do against the running app / API / CLI / DB / artifact to confirm it works.
|
|
70
|
+
- **Evidence artifact** — the screenshot, curl output, CLI output, DB row, or generated file the verifier captures.
|
|
71
|
+
- **Confidence** — high | medium | low, with the reason.
|
|
72
|
+
|
|
73
|
+
## Step 4 — Rank and assemble the report
|
|
74
|
+
|
|
75
|
+
Rank build-ready ideas by **user value, feasibility, verification clarity, and project fit**. Emit the report in this shape:
|
|
76
|
+
|
|
77
|
+
```markdown
|
|
78
|
+
## What Already Exists
|
|
79
|
+
- <current surfaces, data, commands, or workflows discovered — so duplicates are not re-proposed>
|
|
80
|
+
|
|
81
|
+
## Practical Ideas
|
|
82
|
+
### 1. <Idea name>
|
|
83
|
+
- User value: <why the host project's user would care>
|
|
84
|
+
- Existing fit: <current route/API/CLI/model/doc/surface it builds on>
|
|
85
|
+
- Data/source path: <specific accessible source or scrape/API path>
|
|
86
|
+
- Practical slice: <smallest useful version>
|
|
87
|
+
- Empirical verification: <steps the agent can perform against the running software>
|
|
88
|
+
- Evidence: <screenshot, curl output, CLI output, DB row, generated file, etc.>
|
|
89
|
+
- Confidence: high|medium|low with reason
|
|
90
|
+
|
|
91
|
+
## Discovery Spikes
|
|
92
|
+
- <ideas that need proof of data, access, or verification before they can be build-ready — name the missing proof>
|
|
93
|
+
|
|
94
|
+
## Rejected / Not Practical Yet
|
|
95
|
+
- <attractive ideas rejected because data, access, legality, or verification is not available — name what is missing>
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Always include the **What Already Exists** section so the user can tell genuinely new ideas from duplicates, and so the report records existing capabilities. Always include both the **Discovery Spikes** and **Rejected / Not Practical Yet** sections (even if empty) so the user can see what was deliberately filtered out and why.
|
|
99
|
+
|
|
100
|
+
## Out of scope (hard rules)
|
|
101
|
+
|
|
102
|
+
- **No sign-in-only ideas** unless the host project already supports sign-in *and* credentials are available.
|
|
103
|
+
- **No private-data assumptions** — do not premise an idea on data the project cannot legitimately obtain.
|
|
104
|
+
- **No manual-data-only requirements** unless the user explicitly accepts manual curation.
|
|
105
|
+
- **No paid-API or non-scrapeable-source ideas** in the build-ready list — demote them with the blocker named.
|
|
106
|
+
- **Tests, lint, typecheck, and build are not the empirical verification plan.** They are prerequisites; the verification plan must observe user-facing behavior.
|
|
107
|
+
- **Do not auto-create tracker tickets or mutate the host project.** Produce the report only; planning and implementation are separate, user-invoked flows.
|
|
108
|
+
- **Do not add a new verification or browser-automation framework** when the host project already has one — reuse it.
|
|
109
|
+
- **Do not overfit to a source example.** Keep the workflow project-agnostic and reusable.
|
|
110
|
+
|
|
111
|
+
## Handing off
|
|
112
|
+
|
|
113
|
+
When the user wants to act on an idea, preserve its feasibility and verification card as the source artifact so downstream flows inherit the evidence:
|
|
114
|
+
|
|
115
|
+
- Turn an idea into a PRD → `/lisa:research`
|
|
116
|
+
- Turn a PRD into tickets → `/lisa:plan`
|
|
117
|
+
- Build a ticket end-to-end → `/lisa:implement`
|
|
118
|
+
- Lock in the verification so it never regresses → `/lisa:codify-verification`
|
|
119
|
+
|
|
120
|
+
## Example outputs
|
|
121
|
+
|
|
122
|
+
Use the markdown examples in `examples/` as shape references when composing reports:
|
|
123
|
+
|
|
124
|
+
- `host-project-only.md` shows ideas grounded only in the current repository.
|
|
125
|
+
- `public-external-inspiration.md` shows how public, no-login external sources can inspire ideas without becoming hidden requirements.
|
|
126
|
+
- `unavailable-data-rejection.md` shows how to name missing private, paid, or unavailable data sources when demoting ideas.
|
|
127
|
+
- `evidence-card-format.md` shows the required evidence fields every Practical Idea card must carry.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Evidence Card Formatting Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- Lisa work items already use Validation Journey evidence markers.
|
|
5
|
+
- Skill reports can be saved as markdown artifacts and reviewed by humans.
|
|
6
|
+
|
|
7
|
+
## Practical Ideas
|
|
8
|
+
### 1. Evidence-First Idea Cards
|
|
9
|
+
- User value: A reviewer can decide whether an idea is ready without asking how it will be proven.
|
|
10
|
+
- Existing fit: Uses the project-ideation report shape and Lisa's evidence-first verification rules.
|
|
11
|
+
- Data/source path: Existing local project files plus any public URLs cited in the report.
|
|
12
|
+
- Practical slice: Require each practical idea to include `Empirical verification` and `Evidence` lines before it can remain in the practical list.
|
|
13
|
+
- Empirical verification: Render this example and confirm every practical idea card includes the two evidence fields.
|
|
14
|
+
- Evidence: Text output showing all practical cards pass the field check.
|
|
15
|
+
- Confidence: high because the check is structural and does not require external services.
|
|
16
|
+
|
|
17
|
+
## Discovery Spikes
|
|
18
|
+
- Evidence attachments inside generated reports: needs a storage and retention decision for binary artifacts.
|
|
19
|
+
|
|
20
|
+
## Rejected / Not Practical Yet
|
|
21
|
+
- Treating lint, typecheck, or unit tests as the only proof for a user-facing idea: rejected because quality gates are prerequisites, not empirical evidence artifacts.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Host Project Only Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- CLI command registration is documented in the repository README.
|
|
5
|
+
- Skill sources live under `plugins/src/base/skills/` and are copied into the generated Lisa plugin.
|
|
6
|
+
- The project already has unit tests that verify generated plugin artifacts.
|
|
7
|
+
|
|
8
|
+
## Practical Ideas
|
|
9
|
+
### 1. Plugin Surface Drift Report
|
|
10
|
+
- User value: Maintainers can see which source skills are not represented in the generated plugin before publishing.
|
|
11
|
+
- Existing fit: Builds on the existing plugin source tree and generated plugin artifact tests.
|
|
12
|
+
- Data/source path: Local files under `plugins/src/base/skills/` and `plugins/lisa/skills/`.
|
|
13
|
+
- Practical slice: Emit a markdown report listing source-only, generated-only, and mismatched skill directories.
|
|
14
|
+
- Empirical verification: Run the report command in a clean checkout after intentionally adding one fixture-only source skill.
|
|
15
|
+
- Evidence: CLI output showing the mismatched skill and the generated markdown report path.
|
|
16
|
+
- Confidence: high because the required data is already local and deterministic.
|
|
17
|
+
|
|
18
|
+
## Discovery Spikes
|
|
19
|
+
- Skill usage frequency ranking: needs a bounded source of invocation telemetry before it can be recommended.
|
|
20
|
+
|
|
21
|
+
## Rejected / Not Practical Yet
|
|
22
|
+
- Personalized skill suggestions from private user history: rejected because the repository does not have access to private Codex usage history.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Public External Inspiration Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- The host project already has a command catalog and source-authored skill files.
|
|
5
|
+
- The host project can inspect public documentation pages without sign-in.
|
|
6
|
+
- Existing verification can run through CLI commands and generated markdown artifacts.
|
|
7
|
+
|
|
8
|
+
## Practical Ideas
|
|
9
|
+
### 1. Public Pattern Checklist Import
|
|
10
|
+
- User value: Maintainers can compare their command guidance against public best-practice pages without copying private or paid content.
|
|
11
|
+
- Existing fit: Builds on the current docs and skill authoring workflow.
|
|
12
|
+
- Data/source path: A public, no-login documentation URL supplied by the user, plus local `README.md` and skill files.
|
|
13
|
+
- Practical slice: Generate a checklist of public patterns found in the external page and mark whether each is already represented locally.
|
|
14
|
+
- Empirical verification: Run the ideation workflow against a fixed public URL and inspect the generated checklist.
|
|
15
|
+
- Evidence: Generated markdown containing source URLs, matched local file paths, and unmatched public patterns.
|
|
16
|
+
- Confidence: medium because public pages can change, but the source path is accessible and citeable.
|
|
17
|
+
|
|
18
|
+
## Discovery Spikes
|
|
19
|
+
- Automated freshness checks for public pages: needs a policy for when external pages may be re-fetched and cached.
|
|
20
|
+
|
|
21
|
+
## Rejected / Not Practical Yet
|
|
22
|
+
- Importing examples from a sign-in-only competitor workspace: rejected because the data source is not publicly obtainable.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Unavailable Data Rejection Example Output
|
|
2
|
+
|
|
3
|
+
## What Already Exists
|
|
4
|
+
- The host project can read local source files, docs, scripts, and generated artifacts.
|
|
5
|
+
- The host project does not expose customer analytics, private support tickets, or paid market datasets.
|
|
6
|
+
|
|
7
|
+
## Practical Ideas
|
|
8
|
+
### 1. Local Verification Gap Finder
|
|
9
|
+
- User value: Maintainers can identify skills that describe empirical verification but do not name an evidence artifact.
|
|
10
|
+
- Existing fit: Builds on local skill markdown files and existing unit tests.
|
|
11
|
+
- Data/source path: Local `SKILL.md` files under the plugin source tree.
|
|
12
|
+
- Practical slice: Scan skill files for verification sections and report entries that mention tests but no observable artifact.
|
|
13
|
+
- Empirical verification: Run the scanner against a fixture skill with one missing evidence line.
|
|
14
|
+
- Evidence: CLI output naming the fixture skill and the missing evidence field.
|
|
15
|
+
- Confidence: high because the input is local and fully inspectable.
|
|
16
|
+
|
|
17
|
+
## Discovery Spikes
|
|
18
|
+
- Prioritize gaps by real-world usage: needs an obtainable telemetry source or a manually approved usage export before it can rank by frequency.
|
|
19
|
+
|
|
20
|
+
## Rejected / Not Practical Yet
|
|
21
|
+
- Recommend ideas from private customer support pain points: rejected because the missing source is a legitimate support-ticket export or configured support integration.
|
|
22
|
+
- Recommend ideas from paid analyst reports: rejected because the missing source is a licensed data feed available to the agent at runtime.
|