skilldrop-cli 0.16.12 → 0.16.14
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/bin/skilldrop.js +36 -11
- package/catalogue.json +8 -6
- package/contracts/catalogue.schema.json +15 -1
- package/model-routing.json +1 -17
- package/package.json +1 -1
- package/packs/ai-engineering/skills/ai-readiness-assessment/SKILL.md +1 -1
- package/packs/ai-engineering/skills/ai-readiness-assessment/manifest.json +2 -3
- package/packs/ai-engineering/skills/llm-eval-harness/SKILL.md +1 -1
- package/packs/ai-engineering/skills/llm-eval-harness/manifest.json +2 -2
- package/packs/api-builder/pack.json +1 -1
- package/packs/api-builder/skills/eval-harness-generator/SKILL.md +1 -1
- package/packs/api-builder/skills/eval-harness-generator/manifest.json +2 -2
- package/packs/api-builder/skills/tool-use-schema-writer/SKILL.md +3 -3
- package/packs/api-builder/skills/tool-use-schema-writer/evals/evals.json +1 -1
- package/packs/api-builder/skills/tool-use-schema-writer/manifest.json +2 -2
- package/packs/core/skills/brief-intake/SKILL.md +2 -2
- package/packs/core/skills/brief-intake/manifest.json +3 -3
- package/packs/core/skills/brief-intake/templates/brief-tech-comparison.md +1 -1
- package/packs/core/skills/council-review/SKILL.md +2 -2
- package/packs/core/skills/council-review/manifest.json +2 -2
- package/packs/core/skills/council-review/reference.md +0 -1
- package/packs/core/skills/doc-critique/SKILL.md +1 -1
- package/packs/core/skills/doc-critique/manifest.json +2 -2
- package/packs/core/skills/doc-critique/rubrics/tech-comparison.md +1 -1
- package/packs/data-analytics/pack.json +8 -14
- package/packs/data-analytics/skills/dashboard-spec/SKILL.md +2 -2
- package/packs/data-analytics/skills/dashboard-spec/examples/support-staffing.md +1 -1
- package/packs/data-analytics/skills/dashboard-spec/manifest.json +1 -10
- package/packs/data-analytics/skills/dashboard-spec/templates/dashboard-spec.md +1 -1
- package/packs/data-analytics/skills/sql-review/SKILL.md +2 -2
- package/packs/data-analytics/skills/sql-review/manifest.json +1 -11
- package/packs/dev-team/skills/migration-plan/SKILL.md +1 -1
- package/packs/dev-team/skills/migration-plan/manifest.json +2 -2
- package/packs/product-manager/skills/business-case/SKILL.md +2 -2
- package/packs/product-manager/skills/business-case/manifest.json +3 -3
- package/packs/product-manager/skills/strategy-analysis/SKILL.md +3 -3
- package/packs/product-manager/skills/strategy-analysis/evals/evals.json +1 -1
- package/packs/product-manager/skills/strategy-analysis/manifest.json +2 -3
- package/packs/research/pack.json +2 -2
- package/packs/research/skills/hypothesis-comparison/SKILL.md +3 -3
- package/packs/research/skills/hypothesis-comparison/manifest.json +2 -3
- package/packs/research/skills/research-plan/SKILL.md +0 -1
- package/packs/research/skills/research-plan/manifest.json +2 -3
- package/packs/research/skills/source-synthesis/SKILL.md +103 -100
- package/packs/research/skills/source-synthesis/evals/evals.json +28 -0
- package/packs/research/skills/source-synthesis/evals/files/6/client-survey-summary.md +15 -0
- package/packs/research/skills/source-synthesis/evals/files/6/fenwick-lane-call-notes.txt +10 -0
- package/packs/research/skills/source-synthesis/evals/files/6/finance-email.txt +21 -0
- package/packs/research/skills/source-synthesis/evals/files/6/practice-ledger-article.md +13 -0
- package/packs/research/skills/source-synthesis/evals/files/6/wcapa-benchmarking-extract.md +12 -0
- package/packs/research/skills/source-synthesis/manifest.json +3 -3
- package/packs/skill-engineering/skills/skill-author/SKILL.md +1 -1
- package/packs/skill-engineering/skills/skill-author/manifest.json +1 -2
- package/packs/skill-engineering/skills/skill-review/SKILL.md +1 -1
- package/packs/skill-engineering/skills/skill-review/manifest.json +1 -2
- package/packs/solution-architect/skills/api-contract-draft/SKILL.md +1 -1
- package/packs/solution-architect/skills/api-contract-draft/manifest.json +2 -2
- package/packs/data-analytics/skills/metric-definition/SKILL.md +0 -92
- package/packs/data-analytics/skills/metric-definition/evals/eval_queries.json +0 -34
- package/packs/data-analytics/skills/metric-definition/evals/evals.json +0 -79
- package/packs/data-analytics/skills/metric-definition/evals/files/2/tables.md +0 -42
- package/packs/data-analytics/skills/metric-definition/evals/files/2/thread.md +0 -40
- package/packs/data-analytics/skills/metric-definition/evals/files/4/tables.md +0 -32
- package/packs/data-analytics/skills/metric-definition/evals/files/4/thread.md +0 -31
- package/packs/data-analytics/skills/metric-definition/examples/refund-rate.md +0 -104
- package/packs/data-analytics/skills/metric-definition/manifest.json +0 -41
- package/packs/data-analytics/skills/metric-definition/reference.md +0 -67
- package/packs/data-analytics/skills/metric-definition/templates/metric-spec.md +0 -70
- package/packs/dev-team/skills/contribution-wizard/SKILL.md +0 -142
- package/packs/dev-team/skills/contribution-wizard/evals/eval_queries.json +0 -30
- package/packs/dev-team/skills/contribution-wizard/evals/evals.json +0 -78
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/AGENTS.md +0 -9
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/CATALOG.md +0 -18
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/CONTRIBUTING.md +0 -45
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/OWNERS.md +0 -7
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/skills/detention-claim-letter/INSTRUCTIONS.md +0 -20
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/skills/detention-claim-letter/skill.yaml +0 -11
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/skills/detention-claim-letter/tests/cases.yaml +0 -25
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/skills/rate-con-extractor/INSTRUCTIONS.md +0 -20
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/skills/rate-con-extractor/skill.yaml +0 -8
- package/packs/dev-team/skills/contribution-wizard/evals/files/2/skills/rate-con-extractor/tests/cases.yaml +0 -32
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/CONTRIBUTING.md +0 -63
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/registry.json +0 -15
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/PROMPT.md +0 -10
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/examples/01-expected.md +0 -2
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/examples/01-input.md +0 -3
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/examples/02-expected.md +0 -1
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/examples/02-input.md +0 -2
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/examples/03-expected.md +0 -1
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/examples/03-input.md +0 -2
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/flag-overdue-holds/meta.json +0 -7
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/PROMPT.md +0 -11
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/examples/01-expected.md +0 -4
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/examples/01-input.md +0 -4
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/examples/02-expected.md +0 -6
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/examples/02-input.md +0 -2
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/examples/03-expected.md +0 -1
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/examples/03-input.md +0 -1
- package/packs/dev-team/skills/contribution-wizard/evals/files/4/skills/summarise-reading-list/skill.toml +0 -6
- package/packs/dev-team/skills/contribution-wizard/manifest.json +0 -11
- package/packs/solution-architect/skills/db-schema-design/SKILL.md +0 -76
- package/packs/solution-architect/skills/db-schema-design/evals/eval_queries.json +0 -34
- package/packs/solution-architect/skills/db-schema-design/evals/evals.json +0 -75
- package/packs/solution-architect/skills/db-schema-design/evals/files/2/current_tables.sql +0 -29
- package/packs/solution-architect/skills/db-schema-design/evals/files/2/notes.md +0 -53
- package/packs/solution-architect/skills/db-schema-design/evals/files/4/finance-email.md +0 -18
- package/packs/solution-architect/skills/db-schema-design/evals/files/4/members_sample.csv +0 -5
- package/packs/solution-architect/skills/db-schema-design/evals/files/4/points_txn_sample.csv +0 -17
- package/packs/solution-architect/skills/db-schema-design/evals/files/4/requirements.md +0 -28
- package/packs/solution-architect/skills/db-schema-design/manifest.json +0 -11
- package/packs/solution-architect/skills/db-schema-design/reference.md +0 -56
- package/packs/solution-architect/skills/db-schema-design/templates/schema-design.md +0 -75
- package/packs/solution-architect/skills/tech-comparison-matrix/SKILL.md +0 -64
- package/packs/solution-architect/skills/tech-comparison-matrix/evals/eval_queries.json +0 -30
- package/packs/solution-architect/skills/tech-comparison-matrix/evals/evals.json +0 -76
- package/packs/solution-architect/skills/tech-comparison-matrix/evals/files/2/requirements.md +0 -20
- package/packs/solution-architect/skills/tech-comparison-matrix/evals/files/2/vendor-notes.md +0 -29
- package/packs/solution-architect/skills/tech-comparison-matrix/evals/files/4/mobile-options.md +0 -45
- package/packs/solution-architect/skills/tech-comparison-matrix/examples/queue-selection.md +0 -41
- package/packs/solution-architect/skills/tech-comparison-matrix/manifest.json +0 -11
- package/packs/solution-architect/skills/tech-comparison-matrix/templates/matrix.md +0 -45
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"description": "For analysts and the people who rely on their numbers:
|
|
2
|
+
"description": "For analysts and the people who rely on their numbers: review SQL for the bugs that quietly inflate a figure, and spec dashboards around a decision instead of every chart that was easy to make.",
|
|
3
3
|
"display_name": "Data and analytics",
|
|
4
|
-
"keywords": ["metrics", "sql", "dashboard", "
|
|
4
|
+
"keywords": ["metrics", "sql", "dashboard", "dbt", "bi", "analytics"],
|
|
5
5
|
"links": {
|
|
6
6
|
"documentation": "https://sananthanarayan.github.io/skilldrop/packs/data-analytics/"
|
|
7
7
|
},
|
|
@@ -23,35 +23,29 @@
|
|
|
23
23
|
"when": "A number matters (a board metric, a finance figure, a team KPI) and people either disagree about it or are about to build a dashboard on it.",
|
|
24
24
|
"you_bring": [
|
|
25
25
|
"the metric name and the question it answers",
|
|
26
|
-
"the
|
|
26
|
+
"the SQL or dashboard already computing it, and the tables it reads",
|
|
27
27
|
"who reads it and what they decide",
|
|
28
28
|
"the database engine (Postgres, BigQuery, Snowflake, …)"
|
|
29
29
|
],
|
|
30
30
|
"steps": [
|
|
31
|
-
{
|
|
32
|
-
"skill": "metric-definition",
|
|
33
|
-
"you_do": "Give it the metric, the sources, and any existing SQL.",
|
|
34
|
-
"you_get": "One written definition: exact formula, grain, window and timezone, exclusions with predicates, allowed dimensions, edge cases, owner, reference SQL and sanity checks.",
|
|
35
|
-
"decide": "Confirm the open decisions (timezone, exclusions, lock period) with the metric's owner."
|
|
36
|
-
},
|
|
37
31
|
{
|
|
38
32
|
"skill": "sql-review",
|
|
39
|
-
"you_do": "Run it on the
|
|
33
|
+
"you_do": "Run it on the query that reports the number, with the engine and what one output row should represent.",
|
|
40
34
|
"you_get": "A verdict and line-by-line findings, each with the wrong result and corrected SQL, plus the full corrected query and verification queries.",
|
|
41
|
-
"decide": "
|
|
35
|
+
"decide": "Trust the number, or fix the SQL and review again. If the findings turn on what the number should mean (timezone, exclusions), settle that with the metric's owner first."
|
|
42
36
|
},
|
|
43
37
|
{
|
|
44
38
|
"skill": "dashboard-spec",
|
|
45
39
|
"you_do": "Give it the audience, the decision and the list of requested charts.",
|
|
46
|
-
"you_get": "A one-page spec: questions in priority order, one chart per question
|
|
40
|
+
"you_get": "A one-page spec: questions in priority order, one chart per question with its metric named and any undefined one flagged as a build blocker, filters, freshness SLA, layout, and a cut list."
|
|
47
41
|
},
|
|
48
42
|
{
|
|
49
43
|
"skill": "doc-critique",
|
|
50
|
-
"you_do": "Run it on the
|
|
44
|
+
"you_do": "Run it on the dashboard spec before sharing it with the BI team.",
|
|
51
45
|
"you_get": "A verdict and severity-tagged findings with a fix for each.",
|
|
52
46
|
"decide": "Hand the spec to the builder, or revise it."
|
|
53
47
|
}
|
|
54
48
|
],
|
|
55
|
-
"you_end_with": "
|
|
49
|
+
"you_end_with": "Reviewed SQL whose number you can defend, and a dashboard spec a BI developer can build without guessing."
|
|
56
50
|
}
|
|
57
51
|
}
|
|
@@ -27,7 +27,7 @@ Writes the one-page brief a BI developer builds from, so the dashboard answers t
|
|
|
27
27
|
|
|
28
28
|
✅ *"Sorted horizontal bar, because the question is which queue is worst and a ranked bar answers that at a glance."* No pies for more than three parts, no dual axes, no 3D. Every number tile shows a comparison (against target, last period, or the same period last year). A bare number can't tell anyone whether to act.
|
|
29
29
|
|
|
30
|
-
5. **Name the metric behind each chart by its
|
|
30
|
+
5. **Name the metric behind each chart by its defined name**, with the grain, the time window and the comparison. ✅ `first_response_hours_p90` · daily · last 8 weeks · vs target 4h. A metric with no written definition is flagged `undefined: needs a spec before build`. That's a build blocker, not a detail for the BI developer to settle by guessing.
|
|
31
31
|
|
|
32
32
|
6. **Set the filters**, at most four global ones with their default values. Only offer a filter on a dimension each affected metric can be sliced by. A filter that fans out a metric (product category on order-level revenue) is left off with a note saying why.
|
|
33
33
|
|
|
@@ -66,7 +66,7 @@ Writes the one-page brief a BI developer builds from, so the dashboard answers t
|
|
|
66
66
|
|
|
67
67
|
## When NOT to use this skill
|
|
68
68
|
|
|
69
|
-
- ❌ Defining how one metric is calculated (formula, filters, timezone) — that's
|
|
69
|
+
- ❌ Defining how one metric is calculated (formula, filters, timezone) — that's the metric owner's call; this skill flags the gap, it doesn't fill it
|
|
70
70
|
- ❌ Choosing which metric judges a feature, with targets and a decision rule — that's `success-metrics`
|
|
71
71
|
- ❌ Service health dashboards, SLOs and alerting — that's `observability-plan`
|
|
72
72
|
- ❌ A report on AI tool usage from telemetry logs — that's `ai-usage-report`
|
|
@@ -79,6 +79,6 @@ Left off as filters: channel and tag. A ticket can carry several tags, so a tag
|
|
|
79
79
|
|
|
80
80
|
## Open questions
|
|
81
81
|
|
|
82
|
-
- [ ] Incoming tickets needs a
|
|
82
|
+
- [ ] Incoming tickets needs a written definition (created time, merged and spam tickets). Owner: support operations lead.
|
|
83
83
|
- [ ] Tickets handled per agent-week needs a spec (what "handled" means, part-time agents). Owner: support operations lead.
|
|
84
84
|
- [ ] Confirm the dashboard owner.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dashboard-spec",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Spec a dashboard before anyone builds it — the audience and the decision it serves, the questions in priority order, one chart per question with the chart type and why, the defined metric behind each chart, filters, refresh cadence and freshness SLA, and a list of what is deliberately left off, with vanity metrics cut. Use when the user says \"spec a dashboard\", \"what should go on our KPI dashboard\", \"the BI team needs requirements for a dashboard\", \"our dashboard has 40 charts and nobody uses it\", or \"design the exec dashboard\".",
|
|
5
5
|
"entrypoint": "SKILL.md",
|
|
6
6
|
"deps": {
|
|
@@ -13,18 +13,9 @@
|
|
|
13
13
|
},
|
|
14
14
|
"related": [
|
|
15
15
|
"ai-usage-report",
|
|
16
|
-
"metric-definition",
|
|
17
16
|
"observability-plan",
|
|
18
17
|
"success-metrics"
|
|
19
18
|
],
|
|
20
|
-
"handoff": [
|
|
21
|
-
{
|
|
22
|
-
"to": "metric-definition",
|
|
23
|
-
"when": "a chart's metric has no written definition",
|
|
24
|
-
"purpose": "Define the metric's formula, grain, window and exclusions so the BI developer doesn't guess.",
|
|
25
|
-
"fallback": "If metric-definition is absent, mark the metric undefined in the chart table and list the definitional questions (numerator, denominator, timezone, exclusions) under open questions."
|
|
26
|
-
}
|
|
27
|
-
],
|
|
28
19
|
"tags": [
|
|
29
20
|
"dashboard",
|
|
30
21
|
"bi",
|
|
@@ -51,5 +51,5 @@ Left off as filters: <dimension> — <why, e.g. fans out order-level metrics>
|
|
|
51
51
|
|
|
52
52
|
## Open questions
|
|
53
53
|
|
|
54
|
-
- [ ] <undefined metric> — needs a
|
|
54
|
+
- [ ] <undefined metric> — needs a written definition (numerator, denominator, timezone, exclusions), owner <role>
|
|
55
55
|
- [ ] <data gap or unconfirmed target>
|
|
@@ -67,8 +67,8 @@ Reviews a query the way a skeptical analyst would before trusting its output: fi
|
|
|
67
67
|
|
|
68
68
|
## When NOT to use this skill
|
|
69
69
|
|
|
70
|
-
- ❌ Deciding what a metric should mean (formula, filters, owner) — that's
|
|
71
|
-
- ❌ Designing tables, keys and indexes from access patterns —
|
|
70
|
+
- ❌ Deciding what a metric should mean (formula, filters, owner) — that's the metric owner's call; this skill checks that SQL computes it correctly
|
|
71
|
+
- ❌ Designing tables, keys and indexes from access patterns — this reviews queries against a schema, not the schema
|
|
72
72
|
- ❌ Agreeing a dataset's schema, quality SLAs and change policy with its consumers — that's `data-contract`
|
|
73
73
|
- ❌ General application code review, including SQL built in application code for security — that's `pre-merge-review`
|
|
74
74
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sql-review",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Review a SQL query for correctness first and performance second — join fan-out inflating sums, NULL traps in filters and NOT IN, timezone and date-boundary errors, integer division, DISTINCT hiding a bad join, window-frame defaults, implicit casts, non-sargable predicates and missing partition filters — with each finding tied to a line, the wrong number it produces, and corrected SQL for the named dialect. Use when the user pastes a query and asks \"is this right\", \"review my SQL\", \"why is this number too high\", \"check this before it goes in the dashboard\", or \"make this query faster\".",
|
|
5
5
|
"entrypoint": "SKILL.md",
|
|
6
6
|
"deps": {
|
|
@@ -13,18 +13,8 @@
|
|
|
13
13
|
},
|
|
14
14
|
"related": [
|
|
15
15
|
"data-contract",
|
|
16
|
-
"db-schema-design",
|
|
17
|
-
"metric-definition",
|
|
18
16
|
"pre-merge-review"
|
|
19
17
|
],
|
|
20
|
-
"handoff": [
|
|
21
|
-
{
|
|
22
|
-
"to": "metric-definition",
|
|
23
|
-
"when": "the review finds the query's filters or formula disagree with what the business means, and no written definition exists",
|
|
24
|
-
"purpose": "Agree the metric's formula, grain, window and exclusions before fixing the SQL to match.",
|
|
25
|
-
"fallback": "If metric-definition is absent, list the definitional questions (numerator, denominator, timezone, exclusions) in the review's assumptions and mark the affected findings as pending a decision."
|
|
26
|
-
}
|
|
27
|
-
],
|
|
28
18
|
"tags": [
|
|
29
19
|
"sql",
|
|
30
20
|
"analytics",
|
|
@@ -53,7 +53,7 @@ Plans the road from current state to target state so that at every moment the sy
|
|
|
53
53
|
## When NOT to use this skill
|
|
54
54
|
|
|
55
55
|
- ❌ A change deployable in one reversible step — normal deploy, no plan needed
|
|
56
|
-
- ❌ Choosing the target ("should we move to DynamoDB?") —
|
|
56
|
+
- ❌ Choosing the target ("should we move to DynamoDB?") — this skill starts after the decision
|
|
57
57
|
- ❌ The test depth itself — emit gates here, hand verification design to `test-plan-generator`
|
|
58
58
|
- ❌ Organizational/process migrations with no system state — different problem
|
|
59
59
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "migration-plan",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Generate a phased migration or rollout plan (schema change, API version, datastore swap, platform move, auth-provider switch) — expand→migrate→contract by default, every phase reversible or its point of no return named, observable gates between phases, idempotent backfill with parity checks. Use when the user needs a migration plan, cutover plan, rollout strategy, or asks \"how do we get from X to Y without downtime\".",
|
|
5
5
|
"entrypoint": "SKILL.md",
|
|
6
6
|
"deps": { "npm": [], "pip": [] },
|
|
7
7
|
"env": { "required": [], "optional": [] },
|
|
8
|
-
"related": ["council-review", "
|
|
8
|
+
"related": ["council-review", "test-plan-generator"],
|
|
9
9
|
"tags": ["migration", "rollout", "cutover", "backfill", "zero-downtime", "deployment"],
|
|
10
10
|
"model": { "tier": "standard", "rationale": "Phased plan synthesis with a strong template. Ordering judgment is bounded by the expand/migrate/contract pattern; escalate via ambiguous-input on contested, high-stakes cutovers." }
|
|
11
11
|
}
|
|
@@ -5,7 +5,7 @@ description: Build a business case for a build/buy/defer investment decision —
|
|
|
5
5
|
|
|
6
6
|
# business-case
|
|
7
7
|
|
|
8
|
-
Produces the document a sponsor can approve, challenge, or kill on its merits — because every benefit shows its arithmetic, every option includes the one nobody advocates for (doing nothing), and the case names the single assumption that flips the recommendation. Decides *whether to invest*;
|
|
8
|
+
Produces the document a sponsor can approve, challenge, or kill on its merits — because every benefit shows its arithmetic, every option includes the one nobody advocates for (doing nothing), and the case names the single assumption that flips the recommendation. Decides *whether to invest*; picking between technologies comes after, `prd-draft` captures requirements after, `exec-summary` compresses this doc for a board.
|
|
9
9
|
|
|
10
10
|
## How to respond
|
|
11
11
|
|
|
@@ -49,7 +49,7 @@ Produces the document a sponsor can approve, challenge, or kill on its merits
|
|
|
49
49
|
## When NOT to use this skill
|
|
50
50
|
|
|
51
51
|
- ❌ The investment decision is already made — go to `prd-draft`
|
|
52
|
-
- ❌ Choosing between technologies for an approved initiative —
|
|
52
|
+
- ❌ Choosing between technologies for an approved initiative — the investment is already decided; compare the options directly
|
|
53
53
|
- ❌ Compressing an existing case for execs — `exec-summary`
|
|
54
54
|
- ❌ Trivial cost ("should we buy a $400/yr tool") — the case costs more than the decision; just decide
|
|
55
55
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "business-case",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Build a business case for a build/buy/defer investment decision — do-nothing always included as the baseline, benefits quantified as re-runnable calculations with confidence tags, full costs (build + run + opportunity), ranges instead of false precision, and the flip-assumption named. Use when the user needs to justify an investment, write a business case, compare build vs buy vs defer, or get budget/sponsor approval for an initiative.",
|
|
5
5
|
"entrypoint": "SKILL.md",
|
|
6
6
|
"deps": { "npm": [], "pip": [] },
|
|
7
7
|
"env": { "required": [], "optional": [] },
|
|
8
|
-
"related": ["exec-summary", "prd-draft"
|
|
8
|
+
"related": ["exec-summary", "prd-draft"],
|
|
9
9
|
"tags": ["business-case", "investment", "build-vs-buy", "roi", "cost-benefit", "decision"],
|
|
10
|
-
"model": { "tier": "heavy", "rationale": "Weighted multi-option judgment with a committal recommendation
|
|
10
|
+
"model": { "tier": "heavy", "rationale": "Weighted multi-option judgment with a committal recommendation: cheaper models mis-weight costs, inflate benefits, and miss the flip-assumption. Never downgrade." }
|
|
11
11
|
}
|
|
@@ -5,7 +5,7 @@ description: Run a strategy framework — SWOT/TOWS, Porter's Five Forces, or PE
|
|
|
5
5
|
|
|
6
6
|
# strategy-analysis
|
|
7
7
|
|
|
8
|
-
Runs the classic strategy frameworks the way a good strategist does and a bad deck doesn't: the framework is chosen to fit the question, every cell carries evidence and an implication, and the output ends in ranked, committal so-whats — not a filled-in grid. The grid is the working, never the deliverable. Sibling of `
|
|
8
|
+
Runs the classic strategy frameworks the way a good strategist does and a bad deck doesn't: the framework is chosen to fit the question, every cell carries evidence and an implication, and the output ends in ranked, committal so-whats — not a filled-in grid. The grid is the working, never the deliverable. Sibling of `business-case` (a costed invest/defer decision); this skill is for the strategic question *before* options are named.
|
|
9
9
|
|
|
10
10
|
## How to respond
|
|
11
11
|
|
|
@@ -36,7 +36,7 @@ Runs the classic strategy frameworks the way a good strategist does and a bad de
|
|
|
36
36
|
|
|
37
37
|
4. **Rank the implications and commit.** End with **Implications, ranked** — 3–5 entries ordered by impact on the named decision, each an action-shaped sentence with an owner-shaped subject: ✅ *"Price the enterprise tier before Q3: supplier power is rising (🟥) and the S×O attack window closes when the incumbent's contract cycle renews"*. Then a one-paragraph **verdict** answering the user's actual question, taking a side, and naming what evidence would change it.
|
|
38
38
|
|
|
39
|
-
5. **Emit in one message**: evidence base (tag summary), the framework grid(s), ranked implications, verdict. Flag every `[assumption]` that appears in a top-3 implication — those are the validation targets. Hand off:
|
|
39
|
+
5. **Emit in one message**: evidence base (tag summary), the framework grid(s), ranked implications, verdict. Flag every `[assumption]` that appears in a top-3 implication — those are the validation targets. Hand off: investment decision to cost → `business-case`; product direction to test → `prfaq`.
|
|
40
40
|
|
|
41
41
|
## Quality bar
|
|
42
42
|
|
|
@@ -56,7 +56,7 @@ Runs the classic strategy frameworks the way a good strategist does and a bad de
|
|
|
56
56
|
|
|
57
57
|
## When NOT to use this skill
|
|
58
58
|
|
|
59
|
-
- ❌ Choosing between named technologies or vendors —
|
|
59
|
+
- ❌ Choosing between named technologies or vendors — the strategic question is already answered; compare the options directly
|
|
60
60
|
- ❌ A costed build/buy/defer decision — `business-case`
|
|
61
61
|
- ❌ Testing a specific product concept — `prfaq`
|
|
62
62
|
- ❌ Quarterly goal-setting — `okr-cascade`
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"Implications section is ranked (3-5 entries) and each is action-shaped, tied to the two-quarter focus decision",
|
|
12
12
|
"A verdict paragraph takes a side and names what evidence would change it",
|
|
13
13
|
"Assumptions appearing in top-ranked implications are flagged as validation targets",
|
|
14
|
-
"A hand-off to
|
|
14
|
+
"A hand-off to business-case or prfaq is offered where apt"
|
|
15
15
|
]
|
|
16
16
|
},
|
|
17
17
|
{
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "strategy-analysis",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Run a strategy framework — SWOT/TOWS, Porter's Five Forces, or PESTLE — on a product, company, or market question, choosing the right framework for the question and forcing every cell to carry evidence and a so-what. Use when the user asks for a SWOT, a competitive/market analysis, \"should we enter this market\", \"what's our position against X\", or a macro-environment scan.",
|
|
5
5
|
"entrypoint": "SKILL.md",
|
|
6
6
|
"deps": { "npm": [], "pip": [] },
|
|
7
7
|
"env": { "required": [], "optional": [] },
|
|
8
|
-
"related": ["business-case", "okr-cascade", "prfaq"
|
|
8
|
+
"related": ["business-case", "okr-cascade", "prfaq"],
|
|
9
9
|
"handoff": [
|
|
10
|
-
{ "to": "tech-comparison-matrix", "when": "the options are named and need comparing on stated criteria", "purpose": "Score the named options against weighted criteria.", "fallback": "If tech-comparison-matrix is absent, build a plain criteria-by-option table inline and state the weights." },
|
|
11
10
|
{ "to": "business-case", "when": "the direction is chosen and needs costing before approval", "purpose": "Cost the chosen option against a do-nothing baseline.", "fallback": "If business-case is absent, state option 0 and the three cost layers (build, run, opportunity) inline." }
|
|
12
11
|
],
|
|
13
12
|
"tags": ["strategy", "swot", "tows", "five-forces", "pestle", "competitive-analysis", "market-analysis"],
|
package/packs/research/pack.json
CHANGED
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
{
|
|
39
39
|
"skill": "source-synthesis",
|
|
40
40
|
"you_do": "Hand it the sources you collected, as text, with the plan's question.",
|
|
41
|
-
"you_get": "
|
|
41
|
+
"you_get": "What the sources support on the question, each claim traceable to its source, with disagreements and echoes made explicit, the sources' own sums checked, labelled estimates where a figure is needed, and the gaps. Ask for a cited literature review to get page-level citations and strength ratings."
|
|
42
42
|
},
|
|
43
43
|
{
|
|
44
44
|
"skill": "hypothesis-comparison",
|
|
@@ -47,6 +47,6 @@
|
|
|
47
47
|
"decide": "Act on the leading explanation, or run the next observation first."
|
|
48
48
|
}
|
|
49
49
|
],
|
|
50
|
-
"you_end_with": "A decision-led plan, a
|
|
50
|
+
"you_end_with": "A decision-led plan, a synthesis that keeps what the sources say apart from everything else, and, for why-questions, a ranked set of explanations with the next test to run."
|
|
51
51
|
}
|
|
52
52
|
}
|
|
@@ -12,8 +12,8 @@ and keep the hypothesis with the **least evidence against it**. Evidence that fi
|
|
|
12
12
|
hypothesis feels persuasive and proves nothing, so the matrix makes that visible. The output
|
|
13
13
|
is a ranked matrix, the evidence the ranking rests on, and the next observation to make.
|
|
14
14
|
|
|
15
|
-
This skill explains a past or current observation.
|
|
16
|
-
|
|
15
|
+
This skill explains a past or current observation. It does not choose between options going
|
|
16
|
+
forward; for market position, use `strategy-analysis`. To gather
|
|
17
17
|
the evidence in the first place, plan it with `research-plan` and summarise sources with
|
|
18
18
|
`source-synthesis`.
|
|
19
19
|
|
|
@@ -121,7 +121,7 @@ generated per step 2 and tagged `[assumption]`. If the user supplied no evidence
|
|
|
121
121
|
|
|
122
122
|
## When NOT to use this skill
|
|
123
123
|
|
|
124
|
-
- ❌ Choosing between technologies, vendors or approaches for the future —
|
|
124
|
+
- ❌ Choosing between technologies, vendors or approaches for the future — this ranks explanations, not options
|
|
125
125
|
- ❌ Market or competitive position, SWOT, Five Forces — `strategy-analysis`
|
|
126
126
|
- ❌ Planning what evidence to collect before you have any — `research-plan`
|
|
127
127
|
- ❌ Summarising what a set of sources says — `source-synthesis`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hypothesis-comparison",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Compare rival explanations for an observation with analysis of competing hypotheses (ACH) — list the hypotheses and the evidence, build a consistency matrix (consistent / inconsistent / neutral), rank hypotheses by how little evidence contradicts them rather than how much supports them, name the diagnostic evidence and the linchpins, and say which next observation would tell the leaders apart. Use when the user asks \"why did X happen\", \"which explanation fits the evidence\", \"what's really causing this\", wants to stop arguing over a favourite theory, or says \"compare these hypotheses\", \"competing explanations\", \"ACH\".",
|
|
5
5
|
"entrypoint": "SKILL.md",
|
|
6
6
|
"deps": {
|
|
@@ -16,8 +16,7 @@
|
|
|
16
16
|
"postmortem-generator",
|
|
17
17
|
"research-plan",
|
|
18
18
|
"source-synthesis",
|
|
19
|
-
"strategy-analysis"
|
|
20
|
-
"tech-comparison-matrix"
|
|
19
|
+
"strategy-analysis"
|
|
21
20
|
],
|
|
22
21
|
"handoff": [
|
|
23
22
|
{
|
|
@@ -106,7 +106,6 @@ budgets become tagged assumptions (default: two weeks, 15 hours).
|
|
|
106
106
|
- ❌ Ranking rival explanations for something that already happened — `hypothesis-comparison`
|
|
107
107
|
- ❌ Writing the interview scripts for stakeholders — `requirements-interview`
|
|
108
108
|
- ❌ A strategy framework such as SWOT or Five Forces on a market — `strategy-analysis`
|
|
109
|
-
- ❌ Comparing named technologies or vendors — `tech-comparison-matrix`
|
|
110
109
|
- ❌ Turning a messy thread into a brief for another skill — `brief-intake`
|
|
111
110
|
|
|
112
111
|
## Anti-patterns to avoid
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "research-plan",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Turn a vague research question into a research plan — the decision the research serves, the precise question and sub-questions, what finding would change the decision, a method per sub-question (desk research, interviews, data pull, experiment), source types with inclusion and exclusion criteria, ready-to-run search strings, a stopping rule for when you have enough, and the deliverable. Starts by asking what decision the research is for. Use when the user says \"I need to research X\", \"help me scope this research\", \"how should I investigate…\", \"what should I look into before deciding…\", or wants a research or discovery plan.",
|
|
5
5
|
"entrypoint": "SKILL.md",
|
|
6
6
|
"deps": {
|
|
@@ -16,8 +16,7 @@
|
|
|
16
16
|
"hypothesis-comparison",
|
|
17
17
|
"requirements-interview",
|
|
18
18
|
"source-synthesis",
|
|
19
|
-
"strategy-analysis"
|
|
20
|
-
"tech-comparison-matrix"
|
|
19
|
+
"strategy-analysis"
|
|
21
20
|
],
|
|
22
21
|
"handoff": [
|
|
23
22
|
{
|