kotonoha 0.1.6-dev.0 → 0.3.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/CHANGELOG.md +35 -0
- package/README-ja.md +307 -0
- package/README.md +161 -59
- package/package.json +11 -4
- package/skills/consulting-analyst/SKILL.md +241 -0
- package/skills/consulting-analyst/assets/templates/analysis-brief.md +58 -0
- package/skills/consulting-analyst/assets/templates/decision-analysis.md +62 -0
- package/skills/consulting-analyst/assets/templates/hypothesis-evidence-ledger.md +48 -0
- package/skills/consulting-analyst/assets/templates/issue-tree.md +35 -0
- package/skills/consulting-analyst/assets/templates/synthesis-handoff.md +68 -0
- package/skills/consulting-analyst/references/evidence-and-hypotheses.md +80 -0
- package/skills/consulting-analyst/references/framework-selection.md +84 -0
- package/skills/consulting-analyst/references/handoff-contract.md +90 -0
- package/skills/japanese-prose/NOTICE.md +17 -0
- package/skills/japanese-prose/SKILL.md +111 -0
- package/skills/japanese-prose/references/review-workflow.md +50 -0
- package/skills/japanese-prose/references/scoring.md +24 -0
- package/skills/japanese-prose/references/writing-guidelines.md +60 -0
- package/skills/japanese-prose/scripts/core.py +192 -0
- package/skills/japanese-prose/scripts/fixtures/natural.md +5 -0
- package/skills/japanese-prose/scripts/fixtures/unnatural.md +5 -0
- package/skills/japanese-prose/scripts/lint.py +378 -0
- package/skills/japanese-prose/scripts/outline.py +68 -0
- package/skills/japanese-prose/scripts/terms.py +112 -0
- package/skills/japanese-prose/scripts/test_engine.py +117 -0
- package/skills/presentation-planner/SKILL.md +14 -0
- package/skills/tech-writer/SKILL.md +79 -51
- package/skills/tech-writer/assets/templates/blueprint.md +187 -0
- package/skills/tech-writer/assets/templates/white-paper.md +192 -0
- package/skills/tech-writer/references/doctypes/blueprint.md +81 -0
- package/skills/tech-writer/references/doctypes/white-paper.md +84 -0
- package/skills/tech-writer/references/japanese-prose-optimization.md +23 -23
- package/skills/tech-writer/references/style-constitution.md +11 -5
- package/skills/tech-writer/scripts/lint.py +11 -6
package/README.md
CHANGED
|
@@ -1,38 +1,65 @@
|
|
|
1
1
|
# kotonoha
|
|
2
2
|
|
|
3
|
-
kotonoha provides GitHub Copilot CLI skills for
|
|
4
|
-
presentation planning. `
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
material into a reusable presentation scenario, slide outline, design
|
|
3
|
+
kotonoha provides GitHub Copilot CLI skills for consulting analysis, technical
|
|
4
|
+
documents, Japanese prose, and presentation planning. `consulting-analyst`
|
|
5
|
+
structures ambiguous problems into issue trees, hypotheses, evidence, option
|
|
6
|
+
comparisons, and recommendations. `tech-writer` turns that reasoning into
|
|
7
|
+
README, design documents, Blueprints, White Papers, proposals, and other
|
|
8
|
+
technical documents without losing the reader. `japanese-prose` improves
|
|
9
|
+
Japanese wording with GiNZA-based diagnostics. `presentation-planner` turns
|
|
10
|
+
source material into a reusable presentation scenario, slide outline, design
|
|
12
11
|
specification, and handoff for a dedicated PPTX creation skill.
|
|
13
12
|
|
|
13
|
+
[English](./README.md) | [日本語](./README-ja.md)
|
|
14
|
+
|
|
15
|
+
## Why the name kotonoha
|
|
16
|
+
|
|
17
|
+
`kotonoha` comes from the Japanese expression 言の葉 (*kotonoha*), a
|
|
18
|
+
classical and poetic name for words, language, and verse. The name reflects
|
|
19
|
+
this project's purpose: helping a reader's intent grow into clear,
|
|
20
|
+
well-structured words.
|
|
21
|
+
|
|
22
|
+
Its connection to the *Man'yoshu* needs one qualification. One traditional
|
|
23
|
+
interpretation reads the anthology's title as "countless words or poems,"
|
|
24
|
+
but the title's etymology is not settled. The famous explicit image,
|
|
25
|
+
"Japanese poetry takes the human heart as its seed and grows into myriad
|
|
26
|
+
leaves of words," is from the
|
|
27
|
+
[*Kokin Wakashu* Kana Preface](https://ja.wikisource.org/wiki/%E5%8F%A4%E4%BB%8A%E5%92%8C%E6%AD%8C%E9%9B%86%E4%BB%AE%E5%90%8D%E5%BA%8F),
|
|
28
|
+
not the *Man'yoshu*. The earlier *Man'yoshu* expresses a related belief in
|
|
29
|
+
the power of language through *kotodama*, including poems
|
|
30
|
+
[894](https://manyo-hyakka.pref.nara.jp/db/detailLink?cls=db_manyo&pkey=894)
|
|
31
|
+
and
|
|
32
|
+
[3254](https://manyo-hyakka.pref.nara.jp/db/detailLink?cls=db_manyo&pkey=3254).
|
|
33
|
+
The broader historical meaning of 言の葉 is summarized by
|
|
34
|
+
[Kotobank](https://kotobank.jp/word/%E8%A8%80%E3%81%AE%E8%91%89-503155).
|
|
35
|
+
|
|
14
36
|
## What tech-writer solves
|
|
15
37
|
|
|
16
38
|
Technical documents tend to have two separate problems: "is the prose
|
|
17
39
|
natural" and "does the structure have the right amount of information".
|
|
18
|
-
`tech-writer`
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
Japanese prose pass, then rechecks the structure before rubber-duck
|
|
40
|
+
Kotonoha includes both layers. `tech-writer` owns structure and completeness;
|
|
41
|
+
the original bundled `japanese-prose` skill uses
|
|
42
|
+
[GiNZA](https://github.com/megagonlabs/ginza) to check sentence-level
|
|
43
|
+
naturalness, reading load, terminology, dependency depth, and repeated
|
|
44
|
+
AI-like patterns. Kotonoha locks the structure and technical invariants, runs
|
|
45
|
+
the Japanese prose pass, then rechecks the structure before rubber-duck
|
|
46
|
+
review.
|
|
24
47
|
|
|
25
48
|
## What it does
|
|
26
49
|
|
|
50
|
+
- Structure ambiguous business and technical problems with issue trees,
|
|
51
|
+
hypotheses, evidence ledgers, Current–Target–Gap analysis, transparent
|
|
52
|
+
decision matrices, and Pyramid Principle synthesis
|
|
27
53
|
- Create/review README, design docs/ADRs, API reference, PR
|
|
28
54
|
descriptions/commit messages/issue reports, release notes, user manuals,
|
|
29
55
|
code comments, requirements definitions, system designs, test plans,
|
|
30
56
|
operations runbooks, migration plans, security designs, technical proposals,
|
|
31
|
-
RFI/RFP procurement documents, and Qiita/Zenn
|
|
57
|
+
Blueprints, White Papers, RFI/RFP procurement documents, and Qiita/Zenn
|
|
58
|
+
articles
|
|
32
59
|
- Doctype-specific structure and checklists to guide writing
|
|
33
|
-
-
|
|
34
|
-
|
|
35
|
-
|
|
60
|
+
- Original GiNZA-based `japanese-prose` lint, reading-load review, terminology
|
|
61
|
+
checks, and iterative prose optimization without changing IDs, facts,
|
|
62
|
+
tables, code, or acceptance criteria
|
|
36
63
|
- Iterative rubber-duck review after document creation, with fixes and
|
|
37
64
|
re-review until no actionable findings remain; unavailable reviews are
|
|
38
65
|
reported as `review not performed`, while unresolved review loops are
|
|
@@ -64,6 +91,8 @@ Japanese prose pass, then rechecks the structure before rubber-duck review.
|
|
|
64
91
|
| User guidance | User manual, how-to guide, tutorial | `user-manual` |
|
|
65
92
|
| Source documentation | Code comments, docstrings | `code-comments` |
|
|
66
93
|
| Internal technical proposal | Architecture, investment, and delivery proposal | `technical-proposal` |
|
|
94
|
+
| Future-state blueprint | Business, operating-model, data, and technology transformation blueprint | `blueprint` |
|
|
95
|
+
| Evidence-led publication | Technical or business White Paper | `white-paper` |
|
|
67
96
|
| Request for information | RFI | `rfi` |
|
|
68
97
|
| Request for proposal | RFP | `rfp` |
|
|
69
98
|
| Technical article | Zenn article | `zenn` |
|
|
@@ -72,10 +101,41 @@ Japanese prose pass, then rechecks the structure before rubber-duck review.
|
|
|
72
101
|
Reusable templates are included for README, design decisions, user manuals,
|
|
73
102
|
PR descriptions, requirements definitions, system designs, test plans,
|
|
74
103
|
operations runbooks, migration plans, security designs, technical proposals,
|
|
75
|
-
RFI, RFP, and Qiita articles. Every supported
|
|
76
|
-
structure guidance and a review checklist under
|
|
104
|
+
Blueprints, White Papers, RFI, RFP, and Qiita articles. Every supported
|
|
105
|
+
doctype includes dedicated structure guidance and a review checklist under
|
|
77
106
|
`skills/tech-writer/references/doctypes/`.
|
|
78
107
|
|
|
108
|
+
## What consulting-analyst does
|
|
109
|
+
|
|
110
|
+
- Defines the decision-maker, decision question, outcome, scope, and evidence
|
|
111
|
+
gaps before a document or presentation is written
|
|
112
|
+
- Selects the smallest useful framework set instead of filling frameworks
|
|
113
|
+
mechanically
|
|
114
|
+
- Builds an issue tree and testable hypothesis/evidence ledger
|
|
115
|
+
- Supports Current–Target–Gap analysis and weighted option comparison with
|
|
116
|
+
scoring anchors and sensitivity analysis
|
|
117
|
+
- Separates facts, estimates, assumptions, interpretations, and
|
|
118
|
+
recommendations
|
|
119
|
+
- Produces a traceable synthesis handoff for `tech-writer` and
|
|
120
|
+
`presentation-planner`
|
|
121
|
+
|
|
122
|
+
Example requests:
|
|
123
|
+
|
|
124
|
+
```text
|
|
125
|
+
Structure this business problem as an issue tree and identify the evidence
|
|
126
|
+
needed to answer each priority issue.
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
```text
|
|
130
|
+
Analyze the current and target states, identify the gaps, and prepare the
|
|
131
|
+
analysis for a Blueprint.
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
```text
|
|
135
|
+
Compare these alternatives using explicit criteria and prepare a White Paper
|
|
136
|
+
handoff without inventing missing evidence.
|
|
137
|
+
```
|
|
138
|
+
|
|
79
139
|
## What presentation-planner does
|
|
80
140
|
|
|
81
141
|
- Defines the audience, decision, call to action, and presentation constraints
|
|
@@ -94,10 +154,10 @@ structure guidance and a review checklist under
|
|
|
94
154
|
### Prerequisites
|
|
95
155
|
|
|
96
156
|
- GitHub Copilot CLI installed
|
|
97
|
-
- Python 3.9+
|
|
98
|
-
|
|
99
|
-
-
|
|
100
|
-
|
|
157
|
+
- Python 3.9+ for tech-writer's structural lint
|
|
158
|
+
- Python 3.10+ and `uv` for the bundled GiNZA diagnostics such as prose lint,
|
|
159
|
+
reading-load analysis, outline extraction, and terminology checks; `uv`
|
|
160
|
+
resolves GiNZA, `ja_ginza`, and spaCy on first use
|
|
101
161
|
|
|
102
162
|
### Install from npm
|
|
103
163
|
|
|
@@ -109,11 +169,11 @@ npm install --save-dev kotonoha
|
|
|
109
169
|
npx kotonoha install
|
|
110
170
|
```
|
|
111
171
|
|
|
112
|
-
### Install
|
|
172
|
+
### Install all bundled skills together
|
|
113
173
|
|
|
114
174
|
`kotonoha install` installs every packaged skill that is not already present.
|
|
115
|
-
The following commands install
|
|
116
|
-
`presentation-planner` into `.github/skills/`:
|
|
175
|
+
The following commands install `consulting-analyst`, `tech-writer`,
|
|
176
|
+
`japanese-prose`, and `presentation-planner` into `.github/skills/`:
|
|
117
177
|
|
|
118
178
|
```bash
|
|
119
179
|
npm install --save-dev kotonoha
|
|
@@ -121,45 +181,68 @@ npx kotonoha install --skill all
|
|
|
121
181
|
```
|
|
122
182
|
|
|
123
183
|
`--skill all` is the default, so `npx kotonoha install` has the same behavior.
|
|
124
|
-
Confirm that
|
|
184
|
+
Confirm that all four skills were installed:
|
|
125
185
|
|
|
126
186
|
```bash
|
|
187
|
+
test -f .github/skills/consulting-analyst/SKILL.md
|
|
127
188
|
test -f .github/skills/tech-writer/SKILL.md
|
|
189
|
+
test -f .github/skills/japanese-prose/SKILL.md
|
|
128
190
|
test -f .github/skills/presentation-planner/SKILL.md
|
|
129
191
|
```
|
|
130
192
|
|
|
131
|
-
If
|
|
132
|
-
|
|
133
|
-
|
|
193
|
+
If a directory already exists, the default command preserves it and installs
|
|
194
|
+
only the missing skills. To replace and update all installed skills at once,
|
|
195
|
+
review or back up local customizations first, then run:
|
|
134
196
|
|
|
135
197
|
```bash
|
|
136
198
|
npx kotonoha install --skill all --force
|
|
137
199
|
```
|
|
138
200
|
|
|
139
|
-
|
|
140
|
-
`natural-japanese` using one of its supported installation methods:
|
|
201
|
+
### Built-in Japanese prose optimization
|
|
141
202
|
|
|
142
|
-
|
|
143
|
-
npx
|
|
203
|
+
Kotonoha includes its own `japanese-prose` skill, so no separate prose skill
|
|
204
|
+
installation is required. `npx kotonoha install` places it beside
|
|
205
|
+
`tech-writer`, allowing the writing workflow to run GiNZA-based prose lint,
|
|
206
|
+
reading-load checks, terminology extraction, outline inspection, and
|
|
207
|
+
iterative prose review locally. The implementation was developed from
|
|
208
|
+
scratch for kotonoha and does not include `natural-japanese` source code.
|
|
209
|
+
GiNZA dependency and license information is recorded in
|
|
210
|
+
`skills/japanese-prose/NOTICE.md`.
|
|
211
|
+
|
|
212
|
+
You do not need to name GiNZA explicitly in a natural-language request.
|
|
213
|
+
Requests to make a Japanese document more natural, readable, concise, or less
|
|
214
|
+
formulaic invoke the bundled prose-optimization workflow. For example:
|
|
215
|
+
|
|
216
|
+
```text
|
|
217
|
+
Rewrite README-ja.md in natural, readable Japanese.
|
|
144
218
|
```
|
|
145
219
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
220
|
+
```text
|
|
221
|
+
Review this design document for unnatural Japanese, overly long sentences,
|
|
222
|
+
and repetitive AI-like phrasing, then fix the findings.
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
You can specify the intended mode more precisely:
|
|
226
|
+
|
|
227
|
+
- Edit the file: `Optimize the Japanese prose in README-ja.md.`
|
|
228
|
+
- Review without editing: `Review the Japanese in README-ja.md, but do not modify the file.`
|
|
229
|
+
- Score only: `Score the Japanese prose in README-ja.md out of 100.`
|
|
230
|
+
- Run every diagnostic: `Run the full Japanese prose optimization workflow on README-ja.md.`
|
|
231
|
+
- Request GiNZA explicitly: `Analyze README-ja.md with GiNZA and improve dependency depth and reading load.`
|
|
152
232
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
233
|
+
When creating a new Japanese document, asking `Create a Japanese README for
|
|
234
|
+
this repository` lets `tech-writer` create and structurally review the draft,
|
|
235
|
+
then run the GiNZA-based prose pass before rubber-duck review. To require the
|
|
236
|
+
pass unambiguously, ask: `Create or revise <file> as a technical document and
|
|
237
|
+
run GiNZA-based Japanese prose optimization.`
|
|
157
238
|
|
|
158
|
-
The default destinations are `.github/skills/
|
|
159
|
-
`.github/skills/
|
|
160
|
-
|
|
239
|
+
The default destinations are `.github/skills/consulting-analyst`,
|
|
240
|
+
`.github/skills/tech-writer`, `.github/skills/japanese-prose`, and
|
|
241
|
+
`.github/skills/presentation-planner` in the current project. To install only
|
|
242
|
+
one skill, or use another supported skill directory:
|
|
161
243
|
|
|
162
244
|
```bash
|
|
245
|
+
npx kotonoha install --skill consulting-analyst
|
|
163
246
|
npx kotonoha install --skill presentation-planner
|
|
164
247
|
npx kotonoha install --target .claude/skills
|
|
165
248
|
npx kotonoha install --target ~/.copilot/skills
|
|
@@ -180,6 +263,8 @@ installation safe:
|
|
|
180
263
|
```bash
|
|
181
264
|
npx kotonoha install
|
|
182
265
|
# Skipped tech-writer (...)
|
|
266
|
+
# Installed consulting-analyst (...)
|
|
267
|
+
# Installed japanese-prose (...)
|
|
183
268
|
# Installed presentation-planner (...)
|
|
184
269
|
```
|
|
185
270
|
|
|
@@ -211,7 +296,9 @@ npx kotonoha install --force
|
|
|
211
296
|
To update only one skill:
|
|
212
297
|
|
|
213
298
|
```bash
|
|
299
|
+
npx kotonoha install --skill consulting-analyst --force
|
|
214
300
|
npx kotonoha install --skill tech-writer --force
|
|
301
|
+
npx kotonoha install --skill japanese-prose --force
|
|
215
302
|
npx kotonoha install --skill presentation-planner --force
|
|
216
303
|
```
|
|
217
304
|
|
|
@@ -243,7 +330,9 @@ into that repository's `.github/skills/`, `.claude/skills/`, or your global
|
|
|
243
330
|
`~/.copilot/skills/`.
|
|
244
331
|
|
|
245
332
|
```bash
|
|
333
|
+
cp -r skills/consulting-analyst /path/to/your-repo/.github/skills/consulting-analyst
|
|
246
334
|
cp -r skills/tech-writer /path/to/your-repo/.github/skills/tech-writer
|
|
335
|
+
cp -r skills/japanese-prose /path/to/your-repo/.github/skills/japanese-prose
|
|
247
336
|
cp -r skills/presentation-planner /path/to/your-repo/.github/skills/presentation-planner
|
|
248
337
|
```
|
|
249
338
|
|
|
@@ -271,27 +360,40 @@ works too (standard library only).
|
|
|
271
360
|
## Repository layout
|
|
272
361
|
|
|
273
362
|
```text
|
|
363
|
+
skills/consulting-analyst/ # problem structuring and evidence-led analysis skill
|
|
364
|
+
SKILL.md # analysis workflow, safeguards, and handoff
|
|
365
|
+
references/ # framework selection, evidence discipline, handoff contract
|
|
366
|
+
assets/templates/ # brief, issue tree, evidence, decision, and synthesis artifacts
|
|
274
367
|
skills/tech-writer/ # the skill itself
|
|
275
368
|
SKILL.md # skill definition
|
|
276
369
|
references/ # structure constitution + doctype rules/checklists
|
|
277
|
-
references/doctypes/ # README, requirements/design/test/operations/migration/security, API docs, PR/issue, release notes, proposals, RFI/RFP, Qiita/Zenn
|
|
370
|
+
references/doctypes/ # README, requirements/design/test/operations/migration/security, API docs, PR/issue, release notes, proposals, Blueprints, White Papers, RFI/RFP, Qiita/Zenn
|
|
278
371
|
scripts/lint.py # structural lint script
|
|
279
|
-
assets/templates/ # doctype skeletons including requirements, design, test, operations, migration, security, and procurement
|
|
372
|
+
assets/templates/ # doctype skeletons including requirements, design, test, operations, migration, security, strategy, evidence-led publications, and procurement
|
|
373
|
+
skills/japanese-prose/ # original GiNZA-based prose optimization skill
|
|
374
|
+
SKILL.md # writing, lint, review, and convergence workflow
|
|
375
|
+
references/ # writing guidelines, review workflow, and scoring
|
|
376
|
+
scripts/ # prose lint, reading-load, outline, and terminology diagnostics
|
|
377
|
+
NOTICE.md # GiNZA dependency and license information
|
|
280
378
|
skills/presentation-planner/ # storyline, design-spec, and PPTX handoff skill
|
|
281
379
|
SKILL.md
|
|
282
380
|
references/ # boundary, scenario/design guidance, customization, handoff contract
|
|
283
381
|
assets/scenario-templates/ # executive, technical, and data-report narrative scenarios
|
|
284
382
|
assets/design-templates/ # executive, technical, and data-report YAML designs
|
|
285
383
|
.github/skills/tech-writer # symlink to skills/tech-writer (where Copilot CLI reads it)
|
|
384
|
+
.github/skills/consulting-analyst
|
|
385
|
+
.github/skills/japanese-prose
|
|
286
386
|
.github/skills/presentation-planner
|
|
287
387
|
```
|
|
288
388
|
|
|
289
389
|
## Known limitations
|
|
290
390
|
|
|
291
|
-
- `
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
391
|
+
- `consulting-analyst` structures supplied or verified evidence but does not
|
|
392
|
+
manufacture market data, customer facts, estimates, or citations.
|
|
393
|
+
- `skills/tech-writer/scripts/lint.py` detects structural and Markdown
|
|
394
|
+
rendering issues. Prose naturalness, vocabulary, rhythm, and reading load
|
|
395
|
+
are handled by the separately invoked but bundled
|
|
396
|
+
`skills/japanese-prose` workflow and GiNZA diagnostics.
|
|
295
397
|
- The doctypes are written mainly with Japanese technical-writing
|
|
296
398
|
conventions in mind; most of the guidance (especially the commit-message
|
|
297
399
|
imperative-mood rule) applies directly to English documents as well.
|
|
@@ -302,10 +404,10 @@ skills/presentation-planner/ # storyline, design-spec, and PPTX handoff skill
|
|
|
302
404
|
|
|
303
405
|
## Acknowledgment
|
|
304
406
|
|
|
305
|
-
- [
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
407
|
+
- [GiNZA](https://github.com/megagonlabs/ginza) (MIT License) — provides
|
|
408
|
+
tokenization, part-of-speech tagging, dependency parsing, lemmatization,
|
|
409
|
+
sentence boundaries, and named-entity recognition for kotonoha's original
|
|
410
|
+
Japanese prose diagnostics.
|
|
309
411
|
|
|
310
412
|
## License
|
|
311
413
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kotonoha",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "GitHub Copilot CLI skills for technical writing and PPTX
|
|
3
|
+
"version": "0.3.0",
|
|
4
|
+
"description": "GitHub Copilot CLI skills for consulting analysis, technical writing, Japanese prose, and PPTX planning.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "nahisaho",
|
|
7
7
|
"repository": {
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
"kotonoha": "bin/kotonoha.js"
|
|
17
17
|
},
|
|
18
18
|
"scripts": {
|
|
19
|
-
"test": "node --test"
|
|
19
|
+
"test": "node --test",
|
|
20
|
+
"test:ginza": "uv run skills/japanese-prose/scripts/test_engine.py"
|
|
20
21
|
},
|
|
21
22
|
"engines": {
|
|
22
23
|
"node": ">=18"
|
|
@@ -26,6 +27,9 @@
|
|
|
26
27
|
"github-copilot",
|
|
27
28
|
"skill",
|
|
28
29
|
"technical-writing",
|
|
30
|
+
"consulting",
|
|
31
|
+
"analysis",
|
|
32
|
+
"strategy",
|
|
29
33
|
"documentation",
|
|
30
34
|
"markdown",
|
|
31
35
|
"presentation",
|
|
@@ -35,7 +39,10 @@
|
|
|
35
39
|
],
|
|
36
40
|
"files": [
|
|
37
41
|
"CHANGELOG.md",
|
|
42
|
+
"README-ja.md",
|
|
38
43
|
"bin/",
|
|
39
|
-
"skills/"
|
|
44
|
+
"skills/",
|
|
45
|
+
"!skills/**/__pycache__/",
|
|
46
|
+
"!skills/**/*.pyc"
|
|
40
47
|
]
|
|
41
48
|
}
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: consulting-analyst
|
|
3
|
+
description: >-
|
|
4
|
+
Structures ambiguous business and technical problems before writing or
|
|
5
|
+
presentation design. Uses consulting frameworks selectively—not
|
|
6
|
+
mechanically—to define the decision question, build issue trees, form and
|
|
7
|
+
test hypotheses, compare current and target states, evaluate alternatives,
|
|
8
|
+
and synthesize evidence into an actionable recommendation. Use for requests
|
|
9
|
+
like "structure this problem", "build an issue tree", "analyze the root
|
|
10
|
+
cause", "compare these options", "create a transformation roadmap",
|
|
11
|
+
"prepare the analysis for a Blueprint or White Paper",
|
|
12
|
+
「課題を構造化して」「論点を整理して」「仮説を検証して」
|
|
13
|
+
「現状と目標のGapを分析して」「選択肢を比較して」
|
|
14
|
+
「BlueprintやWhite Paperの分析を準備して」. Produces analysis artifacts
|
|
15
|
+
and handoff inputs for tech-writer and presentation-planner. Does not own
|
|
16
|
+
final document prose, slide design, implementation design, or factual
|
|
17
|
+
research that has not been supplied or independently verified.
|
|
18
|
+
license: MIT
|
|
19
|
+
argument-hint: "[analyze|review|handoff] <problem, decision, or source files>"
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
# consulting-analyst
|
|
23
|
+
|
|
24
|
+
Turns an ambiguous problem into a defensible chain from question to evidence,
|
|
25
|
+
conclusion, and action. Frameworks are tools for reducing uncertainty, not
|
|
26
|
+
formats that must be filled.
|
|
27
|
+
|
|
28
|
+
## Responsibility boundary
|
|
29
|
+
|
|
30
|
+
This skill owns:
|
|
31
|
+
|
|
32
|
+
- Decision-question and success-condition definition
|
|
33
|
+
- Issue decomposition and MECE review
|
|
34
|
+
- Hypotheses, evidence needs, confidence, and falsification conditions
|
|
35
|
+
- Current-state, target-state, and gap analysis
|
|
36
|
+
- Explicit option criteria, weighting, scoring, and sensitivity analysis
|
|
37
|
+
- Synthesis into findings, implications, recommendations, and next actions
|
|
38
|
+
- Structured handoff to `tech-writer` or `presentation-planner`
|
|
39
|
+
|
|
40
|
+
This skill does not:
|
|
41
|
+
|
|
42
|
+
- Invent facts, customer evidence, market data, estimates, or citations
|
|
43
|
+
- Treat assumptions as verified findings
|
|
44
|
+
- Write the final technical document when `tech-writer` is available
|
|
45
|
+
- Design slide narratives or visual systems when `presentation-planner` is
|
|
46
|
+
available
|
|
47
|
+
- Replace requirements, system design, project planning, financial modeling,
|
|
48
|
+
legal review, or domain-expert judgment
|
|
49
|
+
|
|
50
|
+
When the user asks directly for a Blueprint, White Paper, proposal, or
|
|
51
|
+
presentation and the underlying analysis is incomplete, complete this
|
|
52
|
+
analysis pass first, then hand the result to the owning writing or
|
|
53
|
+
presentation skill.
|
|
54
|
+
|
|
55
|
+
## Modes
|
|
56
|
+
|
|
57
|
+
- `analyze` (default): create or revise the analysis artifacts and produce a
|
|
58
|
+
synthesis handoff.
|
|
59
|
+
- `review`: challenge an existing analysis for missing branches, unsupported
|
|
60
|
+
claims, hidden assumptions, biased criteria, weak evidence, and conclusions
|
|
61
|
+
that do not follow.
|
|
62
|
+
- `handoff`: normalize existing analysis into the handoff contract without
|
|
63
|
+
repeating completed work.
|
|
64
|
+
|
|
65
|
+
## 1. Gather context one question at a time
|
|
66
|
+
|
|
67
|
+
Ask only the single most informative missing question, then wait. Stop when
|
|
68
|
+
the following are known or explicitly recorded as unknown:
|
|
69
|
+
|
|
70
|
+
1. The decision-maker or actor who will use the analysis
|
|
71
|
+
2. The exact decision, problem, or question to resolve
|
|
72
|
+
3. The measurable outcome or decision deadline
|
|
73
|
+
4. Scope, constraints, and excluded topics
|
|
74
|
+
5. Available evidence, source files, and known data gaps
|
|
75
|
+
6. Required destination: analysis only, document, Blueprint, White Paper,
|
|
76
|
+
proposal, or presentation
|
|
77
|
+
|
|
78
|
+
Do not ask the user which framework to use unless they have a mandatory
|
|
79
|
+
method. Select the smallest framework set that resolves the question.
|
|
80
|
+
|
|
81
|
+
## 2. Create the analysis workspace
|
|
82
|
+
|
|
83
|
+
Write artifacts under `.consulting/<analysis-slug>/` unless the user specifies
|
|
84
|
+
another directory. Use a stable, filesystem-safe slug so separate analyses do
|
|
85
|
+
not overwrite one another.
|
|
86
|
+
|
|
87
|
+
In `analyze` mode, create:
|
|
88
|
+
|
|
89
|
+
1. `analysis-brief.md`
|
|
90
|
+
2. `issue-tree.md`
|
|
91
|
+
3. `hypothesis-evidence-ledger.md`
|
|
92
|
+
4. `synthesis-handoff.md`
|
|
93
|
+
|
|
94
|
+
Start from the matching files under `assets/templates/`.
|
|
95
|
+
The packaged templates use English canonical field names. Translate headings
|
|
96
|
+
and instructions into the requested output language while preserving artifact
|
|
97
|
+
filenames, IDs, statement types, status values, and table semantics.
|
|
98
|
+
|
|
99
|
+
Create `decision-analysis.md` only when Current–Target–Gap analysis or option
|
|
100
|
+
comparison is in scope. Record omitted artifacts and the reason in
|
|
101
|
+
`synthesis-handoff.md`. In `review` mode, update only artifacts affected by
|
|
102
|
+
the findings. In `handoff` mode, normalize the supplied analysis without
|
|
103
|
+
creating empty framework artifacts.
|
|
104
|
+
|
|
105
|
+
## 3. Select frameworks by decision need
|
|
106
|
+
|
|
107
|
+
Read `references/framework-selection.md`. Use no more than three primary
|
|
108
|
+
frameworks in one analysis unless the user explicitly requests a broader
|
|
109
|
+
study.
|
|
110
|
+
|
|
111
|
+
| Decision need | Primary framework |
|
|
112
|
+
|---|---|
|
|
113
|
+
| Decompose an ambiguous question | Issue Tree / logic tree |
|
|
114
|
+
| Test an explanation or proposed answer | Hypothesis–Evidence–Falsification |
|
|
115
|
+
| Explain cause rather than symptoms | Causal tree / 5 Whys with evidence |
|
|
116
|
+
| Define a future state and transformation path | Current–Target–Gap |
|
|
117
|
+
| Compare alternatives transparently | Weighted decision matrix |
|
|
118
|
+
| Communicate the final reasoning | Pyramid Principle / SCQA |
|
|
119
|
+
|
|
120
|
+
SWOT, 3C, PESTLE, Five Forces, capability maps, and impact/effort matrices
|
|
121
|
+
may be supporting lenses. Do not use them unless each field changes a
|
|
122
|
+
decision, hypothesis, criterion, or action.
|
|
123
|
+
|
|
124
|
+
## 4. Build a testable issue tree
|
|
125
|
+
|
|
126
|
+
Use `references/evidence-and-hypotheses.md`.
|
|
127
|
+
|
|
128
|
+
1. Write one decision question at the root.
|
|
129
|
+
2. Decompose by one explicit logic at each level, such as causes, options,
|
|
130
|
+
capabilities, lifecycle stages, or economics.
|
|
131
|
+
3. Make sibling branches collectively sufficient for the parent question and
|
|
132
|
+
remove material overlap.
|
|
133
|
+
4. Mark branches as `priority`, `supporting`, `out of scope`, or `unknown`.
|
|
134
|
+
5. Define what evidence would answer every priority leaf.
|
|
135
|
+
|
|
136
|
+
Do not claim perfect MECE when the domain is uncertain. Record residual
|
|
137
|
+
overlap and known omissions.
|
|
138
|
+
|
|
139
|
+
## 5. Form hypotheses and manage evidence
|
|
140
|
+
|
|
141
|
+
For each priority issue:
|
|
142
|
+
|
|
143
|
+
- State the hypothesis as a falsifiable proposition
|
|
144
|
+
- Record why it is plausible without presenting that rationale as proof
|
|
145
|
+
- Define evidence that supports and weakens it
|
|
146
|
+
- Identify source, date, owner, and confidence
|
|
147
|
+
- Separate `fact`, `estimate`, `assumption`, `interpretation`, and
|
|
148
|
+
`recommendation`
|
|
149
|
+
- Set the next evidence-gathering action and owner
|
|
150
|
+
|
|
151
|
+
Never upgrade an assumption to a finding because it appears in several
|
|
152
|
+
frameworks. Repetition is not corroboration.
|
|
153
|
+
|
|
154
|
+
## 6. Analyze gaps or alternatives
|
|
155
|
+
|
|
156
|
+
Use the path that fits the decision:
|
|
157
|
+
|
|
158
|
+
### Current–Target–Gap
|
|
159
|
+
|
|
160
|
+
Describe current and target states with the same dimensions and evidence
|
|
161
|
+
standard. Map each material gap to an intervention, dependency, owner,
|
|
162
|
+
measure, and transition risk. Do not jump directly from aspiration to a
|
|
163
|
+
roadmap.
|
|
164
|
+
|
|
165
|
+
### Weighted decision matrix
|
|
166
|
+
|
|
167
|
+
Define criteria before scoring options. State:
|
|
168
|
+
|
|
169
|
+
- Criterion definition and direction
|
|
170
|
+
- Weight and rationale
|
|
171
|
+
- Scoring scale with anchors
|
|
172
|
+
- Evidence behind each score
|
|
173
|
+
- Mandatory thresholds or disqualifiers
|
|
174
|
+
- Sensitivity to plausible changes in weights or scores
|
|
175
|
+
|
|
176
|
+
The arithmetic supports judgment; it does not replace it.
|
|
177
|
+
|
|
178
|
+
## 7. Synthesize without overclaiming
|
|
179
|
+
|
|
180
|
+
Build the synthesis in this order:
|
|
181
|
+
|
|
182
|
+
1. **Answer**: the current best answer to the decision question
|
|
183
|
+
2. **Because**: two to four mutually distinct supporting findings
|
|
184
|
+
3. **Evidence**: traceable sources and confidence for each finding
|
|
185
|
+
4. **So what**: implication for the decision-maker
|
|
186
|
+
5. **Now what**: action, owner, timing, and validation checkpoint
|
|
187
|
+
6. **Uncertainty**: assumptions, counterevidence, and conditions that would
|
|
188
|
+
change the recommendation
|
|
189
|
+
|
|
190
|
+
Use the Pyramid Principle for the final reasoning structure. Use SCQA only
|
|
191
|
+
when it clarifies the audience's path to the question; do not manufacture
|
|
192
|
+
dramatic tension.
|
|
193
|
+
|
|
194
|
+
## 8. Handoff to the owning skill
|
|
195
|
+
|
|
196
|
+
Read `references/handoff-contract.md`.
|
|
197
|
+
|
|
198
|
+
- For a technical or business document, pass `synthesis-handoff.md` to
|
|
199
|
+
`tech-writer`, including the target doctype.
|
|
200
|
+
- For a presentation, pass it to `presentation-planner`, including the exact
|
|
201
|
+
audience decision and evidence status.
|
|
202
|
+
- When both are requested, write the source document first unless the user
|
|
203
|
+
explicitly prioritizes the presentation.
|
|
204
|
+
|
|
205
|
+
The receiving skill may restructure the communication, but it must preserve
|
|
206
|
+
evidence IDs, confidence, assumptions, disconfirming evidence, decision
|
|
207
|
+
criteria, and unresolved questions.
|
|
208
|
+
|
|
209
|
+
## 9. Quality gate
|
|
210
|
+
|
|
211
|
+
Before reporting completion, confirm:
|
|
212
|
+
|
|
213
|
+
- The root question names an actor and decision
|
|
214
|
+
- Every recommendation traces to findings and evidence
|
|
215
|
+
- Every priority issue has an answer, explicit unknown, or next action
|
|
216
|
+
- Facts, estimates, assumptions, and interpretations remain distinguishable
|
|
217
|
+
- A hypothesis marked `Supported` cites at least one `Fact` or `Estimate`;
|
|
218
|
+
that evidence must support the specific hypothesis. Assumptions and
|
|
219
|
+
interpretations may guide analysis but never count as supporting evidence
|
|
220
|
+
- Criteria and weights were defined before option scoring
|
|
221
|
+
- Decision-matrix weights sum to 100%, and sensitivity checks follow the
|
|
222
|
+
minimum procedure in `decision-analysis.md`
|
|
223
|
+
- Current and target states use comparable dimensions
|
|
224
|
+
- Counterevidence and uncertainty are visible
|
|
225
|
+
- No framework section exists only because a template contained it
|
|
226
|
+
- Every omitted artifact is named with the reason it was unnecessary
|
|
227
|
+
- The handoff identifies what the next skill may and may not change
|
|
228
|
+
|
|
229
|
+
If evidence is insufficient, report `analysis incomplete` with the unresolved
|
|
230
|
+
decision-critical gaps. Do not create a success-shaped recommendation.
|
|
231
|
+
|
|
232
|
+
## Completion report
|
|
233
|
+
|
|
234
|
+
Report:
|
|
235
|
+
|
|
236
|
+
- Mode and selected frameworks with reasons
|
|
237
|
+
- Artifacts created or reviewed
|
|
238
|
+
- Decision question and current answer
|
|
239
|
+
- Confirmed findings, assumptions, and unresolved evidence gaps
|
|
240
|
+
- Handoff destination, if any
|
|
241
|
+
- `analysis completed` or `analysis incomplete`
|