codewhale.history 2.11.9 → 2.11.11

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.
@@ -1,3 +1,18 @@
1
+ Copyright (C) 2026 Celestial Consulting Ltd
2
+
3
+ This program is free software: you can redistribute it and/or modify
4
+ it under the terms of the GNU Affero General Public License as
5
+ published by the Free Software Foundation, either version 3 of the
6
+ License, or (at your option) any later version.
7
+
8
+ This program is distributed in the hope that it will be useful,
9
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ GNU Affero General Public License for more details.
12
+
13
+ You should have received a copy of the GNU Affero General Public License
14
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
15
+
1
16
  # Delegated Instructions
2
17
 
3
18
  ## //tools Command
package/CHANGELOG.md CHANGED
@@ -4,6 +4,16 @@ All notable changes to the CodeWhale Tools Pack.
4
4
 
5
5
  ---
6
6
 
7
+ ## [2.11.11] — 2026-07-11
8
+
9
+ ### Added
10
+ - AGPL copyright headers to all source files (4 JS files, 4 SKILL.md files, README, instructions)
11
+
12
+ ## [2.11.10] — 2026-07-09
13
+
14
+ ### Changed
15
+ - README: clarified install instructions — navigate to your project folder first
16
+
7
17
  ## [2.11.9] — 2026-07-07
8
18
 
9
19
  ### Removed
package/README.md CHANGED
@@ -1,172 +1,193 @@
1
- # CodeWhale Tools Pack
2
-
3
- [![License: AGPL v3](https://img.shields.io/badge/License-AGPL_v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
4
-
5
- A portable pack of global CodeWhale commands: `//tools`, `//history`, `//snapshot`, and `//teach-me`.
6
-
7
- Cross-platform — works on Windows, Mac, Linux.
8
-
9
- ## What's inside
10
-
11
- ```
12
- tools_for_codewhale/
13
- ├── _list_sessions.js # codewhale-history command (Node.js)
14
- ├── package.json # npm package config
15
- ├── tools-install.js # Cross-platform installer (skills + instructions)
16
- ├── skills/
17
- │ ├── history/SKILL.md # //history — calls codewhale-history
18
- │ ├── snapshot/SKILL.md # //snapshot — pre-edit file backups
19
- │ ├── teach-me/SKILL.md # //teach-me — interactive code quiz
20
- │ └── tools/tools-skill/SKILL.md # //tools lists all available tools
21
- ├── instructions.md # Trigger config (drop into any .codewhale/)
22
- └── README.md # This file
23
- ```
24
-
25
- ## Install
26
-
27
- ```bash
28
- npm install -g codewhale.history
29
- ```
30
- Skills install globally, and workspace triggers are set up automatically in the current project. `//tools`, `//history`, `//snapshot`, and `//teach-me` work immediately.
31
-
32
- ### IMPORTANT
33
- If you already have codewhale.history installed in a folder and want to update to the lastest version in that folder, delete the .codewhale/instructions.md file before running `npm install -g codewhale.history`
34
-
35
- ### Per-workspace install (add triggers to another workspace)
36
-
37
- ```bash
38
- codewhale-tools-install # current workspace
39
- codewhale-tools-install -p <target-path> # specific workspace
40
- ```
41
-
42
- ## After install
43
-
44
- ### `//tools`
45
- Lists every tool available in the current session, grouped by category (File I/O,
46
- Search, Git, Sub-agents, Shell, Planning, etc.), with a brief description of what
47
- each tool does. Read-only no files touched.
48
-
49
- **`//tools help`** or **`//tools readme`** — displays this full README inside any
50
- CodeWhale session, so you can always reference the command docs without leaving
51
- the terminal.
52
-
53
- ### `//history`
54
- Lists all chat sessions for the current workspace. Each session row shows:
55
-
56
- - **Date/time** when the session was created
57
- - **Title** — session title
58
- - **Messages** — message count for that session
59
- - **Tokens** — tokens consumed (with thousands separators)
60
- - **Cost** session cost in USD (to 4 decimal places)
61
- - **Model** — which model was used
62
-
63
- A **TOTAL** row at the bottom summarizes the number of sessions, total messages,
64
- total tokens, and total cost across all sessions.
65
-
66
- ### `//snapshot`
67
- Toggle pre-edit file backups: `//snapshot on`, `//snapshot off`,
68
- `//snapshot status`.
69
-
70
- **Why you'll want this:** Snapshot is designed for folders that are **not** Git
71
- repos especially folders full of Office documents (`.docx`, `.pptx`, `.xlsx`,
72
- `.pdf`) that an AI agent is about to edit. Before every file modification,
73
- snapshot saves a timestamped copy into `_snapshots/` so you can always get back
74
- to the pre-AI version:
75
-
76
- ```
77
- report.docx → _snapshots/report.2026-06-21_14-30-00.docx
78
- ```
79
-
80
- If the workspace already has a `.git` directory, snapshot politely declines —
81
- Git already has your back.
82
-
83
- ### `//teach-me`
84
- An interactive code-teaching quiz that randomly selects real snippets from your
85
- current project. Two independent dimensions across five difficulty levels:
86
-
87
- **Response mode** (how you answer):
88
- - **Passive** (default) Describe your answer in the console.
89
- - **Interactive** (`teach me interactive`) — Edit the actual file, say `done`.
90
-
91
- **Content theme** (what it's about):
92
- - **Standard** (default) Code comprehension or line reconstruction.
93
- - **SOLID** (`teach me solid`) Anti-pattern detection and design restoration.
94
- - **Spec** (`teach me spec`) Spec-to-code traceability using office docs as source.
95
- - **BA-Gates** (`teach me ba`) — BA documentation quality analysis (ambiguity, AC completeness, edge case coverage).
96
-
97
- | Trigger | Response | Theme | What happens |
98
- |---------|----------|-------|-------------|
99
- | `teach me` | passive | standard | Present code; you explain it |
100
- | `teach me interactive` | interactive | standard | Lines removed; you restore them |
101
- | `teach me solid` | passive | solid | Degraded code; you describe fixes |
102
- | `teach me solid interactive` | interactive | solid | Degraded code; you edit to fix it |
103
- | `teach me spec` | passive | spec | Spec or code presented; you trace the link |
104
- | `teach me spec interactive` | interactive | spec | Trace spec to code; you edit code to match |
105
- | `teach me ba` | passive | ba-gates | BA doc fragment; you identify quality gate violations |
106
- | `teach me ba interactive` | interactive | ba-gates | BA doc with issues; you edit to fix them |
107
-
108
- **Triggers:** `teach me` · `quiz me` · `test my knowledge` · `code quiz` ·
109
- `drill me`
110
-
111
- **Modifiers (combine freely):**
112
-
113
- | Modifier | Example | What it does |
114
- |----------|---------|-------------|
115
- | Language | `teach me python` | Restrict to Python, TypeScript, Rust, Go, Java… |
116
- | Level | `teach me level 3` or `teach me l3` | Set difficulty 1–5 (default: 3) |
117
- | Response | `teach me interactive` | Edit the file instead of describing |
118
- | Theme | `teach me solid` | Anti-pattern detection — fix degraded design |
119
- | Theme | `teach me spec` | Spec-to-code traceability via office docs |
120
- | Theme | `teach me ba` | BA documentation quality analysis |
121
- | Scope | `teach me services/` | Narrow to a specific file or folder |
122
- | Concept | `teach me decorators` | Target: decorators, async, generators, context managers, comprehensions, error handling, type hints, threading |
123
-
124
- **Difficulty levels:**
125
-
126
- | Level | Line range | What you'll face |
127
- |-------|-----------|------------------|
128
- | 1 | 5–15 | Straight-line logic, `if`/`else`, basic function calls |
129
- | 2 | 8–20 | Loops, list/dict operations, simple `try`/`except` |
130
- | 3 | 12–30 | Comprehensions, decorators, `with` statements, multiple branches |
131
- | 4 | 18–45 | Generators, `async`/`await`, descriptors, threading, closures |
132
- | 5 | 25–55 | Metaclasses, complex async patterns, multi-threading, architectural glue |
133
-
134
- **Mid-round commands:** `hint` (get a nudge) · `skip` (see the answer) ·
135
- `next` (draw a new snippet) · `level N` · `easier` · `harder` ·
136
- `interactive` · `passive` · `solid` · `spec` · `ba` · `done` (verify work) · `stop`
137
-
138
- **At the end** you get a session summary: rounds completed, mode, files covered,
139
- what you're strong on, what to review, and a suggested next level.
140
-
141
- In **SOLID theme**: the model rewrites code with deliberate anti-patterns
142
- (STUPID, WET, god objects, tight coupling), presents the degraded code, and you
143
- restore good design. Files are always restored with `git checkout` after each
144
- round.
145
-
146
- In **Spec theme**: the model scans your office documents (`.docx`, `.pptx`,
147
- `.xlsx`) and source code, then quizzes you on the correlation between them.
148
- Each round randomly picks one direction — either "what code implements this
149
- spec?" or "what spec does this code satisfy?" testing whether you truly
150
- understand how requirements map to implementation. In interactive mode, you
151
- edit the code to satisfy the spec; in passive mode, you describe the link.
152
-
153
- In **BA-Gates theme**: the model runs a two-pass analysis over your BA documentation
154
- files (`.docx`, `.pptx`, `.xlsx`, `.md`, `.feature`, `.txt`). Pass 1 uses regex
155
- triage to flag fragments against three quality gates **Ambiguity**
156
- (unmeasurable terms, passive states), **Acceptance Criteria Completeness**
157
- (missing structure, unverifiable outcomes), and **Edge Case Coverage** (missing
158
- negative scenarios, error states). Pass 2 runs an LLM interpretation per
159
- fragment at round time to generate quiz material and concrete improvement
160
- options. You identify which gates a fragment triggers and describe the developer
161
- impact. On skip or strike-3, the model presents 2–3 domain-specific rewrites per
162
- issue with a best-fit recommendation.
163
-
164
- ## Want to take this further
165
- If you've enjoyed using //teach-me and want to audit your entire specification repository and get a formatted report with readiness scores, band distributions, and ranked improvement recommendations, check out our licensed product //spec-analysis. Contact the developer for more info.
166
-
167
- ## Requirements
168
- - Node.js (for the `codewhale-history` command)
169
- - [CodeWhale](https://codewhale.net/en/docs)
170
-
171
- ## Contact Developer
1
+ Copyright (C) 2026 Celestial Consulting Ltd
2
+
3
+ This program is free software: you can redistribute it and/or modify
4
+ it under the terms of the GNU Affero General Public License as
5
+ published by the Free Software Foundation, either version 3 of the
6
+ License, or (at your option) any later version.
7
+
8
+ This program is distributed in the hope that it will be useful,
9
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ GNU Affero General Public License for more details.
12
+
13
+ You should have received a copy of the GNU Affero General Public License
14
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
15
+
16
+ # CodeWhale Tools Pack
17
+
18
+ [![License: AGPL v3](https://img.shields.io/badge/License-AGPL_v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
19
+
20
+ A portable pack of global CodeWhale commands: `//tools`, `//history`, `//snapshot`, and `//teach-me`.
21
+
22
+ Cross-platform works on Windows, Mac, Linux.
23
+
24
+ ## What's inside
25
+
26
+ ```
27
+ tools_for_codewhale/
28
+ ├── _list_sessions.js # codewhale-history command (Node.js)
29
+ ├── package.json # npm package config
30
+ ├── tools-install.js # Cross-platform installer (skills + instructions)
31
+ ├── skills/
32
+ │ ├── history/SKILL.md # //history — calls codewhale-history
33
+ │ ├── snapshot/SKILL.md # //snapshot pre-edit file backups
34
+ │ ├── teach-me/SKILL.md # //teach-me — interactive code quiz
35
+ │ └── tools/tools-skill/SKILL.md # //tools lists all available tools
36
+ ├── instructions.md # Trigger config (drop into any .codewhale/)
37
+ └── README.md # This file
38
+ ```
39
+
40
+ ## Install
41
+
42
+ 1. Open a terminal (Windows Terminal, PowerShell, or Mac/Linux shell).
43
+ 2. Navigate to your project folder (the codebase you want to use these commands with):
44
+ ```bash
45
+ cd /path/to/your/project
46
+ ```
47
+ 3. Run the install command:
48
+ ```bash
49
+ npm install -g codewhale.history
50
+ ```
51
+ The installer detects your current working directory and sets up workspace triggers automatically. `//tools`, `//history`, `//snapshot`, and `//teach-me` work immediately.
52
+
53
+ ### IMPORTANT
54
+ If you already have codewhale.history installed and want to update to the latest version in that folder, delete the `.codewhale/instructions.md` file before running `npm install -g codewhale.history`
55
+
56
+ ### Per-workspace install (add triggers to another workspace)
57
+
58
+ ```bash
59
+ codewhale-tools-install # current workspace
60
+ codewhale-tools-install -p <target-path> # specific workspace
61
+ ```
62
+
63
+ ## After install
64
+
65
+ ### `//tools`
66
+ Lists every tool available in the current session, grouped by category (File I/O,
67
+ Search, Git, Sub-agents, Shell, Planning, etc.), with a brief description of what
68
+ each tool does. Read-only — no files touched.
69
+
70
+ **`//tools help`** or **`//tools readme`** displays this full README inside any
71
+ CodeWhale session, so you can always reference the command docs without leaving
72
+ the terminal.
73
+
74
+ ### `//history`
75
+ Lists all chat sessions for the current workspace. Each session row shows:
76
+
77
+ - **Date/time** — when the session was created
78
+ - **Title** — session title
79
+ - **Messages** — message count for that session
80
+ - **Tokens** tokens consumed (with thousands separators)
81
+ - **Cost** session cost in USD (to 4 decimal places)
82
+ - **Model** — which model was used
83
+
84
+ A **TOTAL** row at the bottom summarizes the number of sessions, total messages,
85
+ total tokens, and total cost across all sessions.
86
+
87
+ ### `//snapshot`
88
+ Toggle pre-edit file backups: `//snapshot on`, `//snapshot off`,
89
+ `//snapshot status`.
90
+
91
+ **Why you'll want this:** Snapshot is designed for folders that are **not** Git
92
+ repos especially folders full of Office documents (`.docx`, `.pptx`, `.xlsx`,
93
+ `.pdf`) that an AI agent is about to edit. Before every file modification,
94
+ snapshot saves a timestamped copy into `_snapshots/` so you can always get back
95
+ to the pre-AI version:
96
+
97
+ ```
98
+ report.docx → _snapshots/report.2026-06-21_14-30-00.docx
99
+ ```
100
+
101
+ If the workspace already has a `.git` directory, snapshot politely declines
102
+ Git already has your back.
103
+
104
+ ### `//teach-me`
105
+ An interactive code-teaching quiz that randomly selects real snippets from your
106
+ current project. Two independent dimensions across five difficulty levels:
107
+
108
+ **Response mode** (how you answer):
109
+ - **Passive** (default) — Describe your answer in the console.
110
+ - **Interactive** (`teach me interactive`) — Edit the actual file, say `done`.
111
+
112
+ **Content theme** (what it's about):
113
+ - **Standard** (default) Code comprehension or line reconstruction.
114
+ - **SOLID** (`teach me solid`) — Anti-pattern detection and design restoration.
115
+ - **Spec** (`teach me spec`) Spec-to-code traceability using office docs as source.
116
+ - **BA-Gates** (`teach me ba`) BA documentation quality analysis (ambiguity, AC completeness, edge case coverage).
117
+
118
+ | Trigger | Response | Theme | What happens |
119
+ |---------|----------|-------|-------------|
120
+ | `teach me` | passive | standard | Present code; you explain it |
121
+ | `teach me interactive` | interactive | standard | Lines removed; you restore them |
122
+ | `teach me solid` | passive | solid | Degraded code; you describe fixes |
123
+ | `teach me solid interactive` | interactive | solid | Degraded code; you edit to fix it |
124
+ | `teach me spec` | passive | spec | Spec or code presented; you trace the link |
125
+ | `teach me spec interactive` | interactive | spec | Trace spec to code; you edit code to match |
126
+ | `teach me ba` | passive | ba-gates | BA doc fragment; you identify quality gate violations |
127
+ | `teach me ba interactive` | interactive | ba-gates | BA doc with issues; you edit to fix them |
128
+
129
+ **Triggers:** `teach me` · `quiz me` · `test my knowledge` · `code quiz` ·
130
+ `drill me`
131
+
132
+ **Modifiers (combine freely):**
133
+
134
+ | Modifier | Example | What it does |
135
+ |----------|---------|-------------|
136
+ | Language | `teach me python` | Restrict to Python, TypeScript, Rust, Go, Java… |
137
+ | Level | `teach me level 3` or `teach me l3` | Set difficulty 1–5 (default: 3) |
138
+ | Response | `teach me interactive` | Edit the file instead of describing |
139
+ | Theme | `teach me solid` | Anti-pattern detection fix degraded design |
140
+ | Theme | `teach me spec` | Spec-to-code traceability via office docs |
141
+ | Theme | `teach me ba` | BA documentation quality analysis |
142
+ | Scope | `teach me services/` | Narrow to a specific file or folder |
143
+ | Concept | `teach me decorators` | Target: decorators, async, generators, context managers, comprehensions, error handling, type hints, threading |
144
+
145
+ **Difficulty levels:**
146
+
147
+ | Level | Line range | What you'll face |
148
+ |-------|-----------|------------------|
149
+ | 1 | 5–15 | Straight-line logic, `if`/`else`, basic function calls |
150
+ | 2 | 8–20 | Loops, list/dict operations, simple `try`/`except` |
151
+ | 3 | 12–30 | Comprehensions, decorators, `with` statements, multiple branches |
152
+ | 4 | 18–45 | Generators, `async`/`await`, descriptors, threading, closures |
153
+ | 5 | 25–55 | Metaclasses, complex async patterns, multi-threading, architectural glue |
154
+
155
+ **Mid-round commands:** `hint` (get a nudge) · `skip` (see the answer) ·
156
+ `next` (draw a new snippet) · `level N` · `easier` · `harder` ·
157
+ `interactive` · `passive` · `solid` · `spec` · `ba` · `done` (verify work) · `stop`
158
+
159
+ **At the end** you get a session summary: rounds completed, mode, files covered,
160
+ what you're strong on, what to review, and a suggested next level.
161
+
162
+ In **SOLID theme**: the model rewrites code with deliberate anti-patterns
163
+ (STUPID, WET, god objects, tight coupling), presents the degraded code, and you
164
+ restore good design. Files are always restored with `git checkout` after each
165
+ round.
166
+
167
+ In **Spec theme**: the model scans your office documents (`.docx`, `.pptx`,
168
+ `.xlsx`) and source code, then quizzes you on the correlation between them.
169
+ Each round randomly picks one direction — either "what code implements this
170
+ spec?" or "what spec does this code satisfy?" — testing whether you truly
171
+ understand how requirements map to implementation. In interactive mode, you
172
+ edit the code to satisfy the spec; in passive mode, you describe the link.
173
+
174
+ In **BA-Gates theme**: the model runs a two-pass analysis over your BA documentation
175
+ files (`.docx`, `.pptx`, `.xlsx`, `.md`, `.feature`, `.txt`). Pass 1 uses regex
176
+ triage to flag fragments against three quality gates — **Ambiguity**
177
+ (unmeasurable terms, passive states), **Acceptance Criteria Completeness**
178
+ (missing structure, unverifiable outcomes), and **Edge Case Coverage** (missing
179
+ negative scenarios, error states). Pass 2 runs an LLM interpretation per
180
+ fragment at round time to generate quiz material and concrete improvement
181
+ options. You identify which gates a fragment triggers and describe the developer
182
+ impact. On skip or strike-3, the model presents 2–3 domain-specific rewrites per
183
+ issue with a best-fit recommendation.
184
+
185
+ ## Want to take this further
186
+ If you've enjoyed using //teach-me and want to audit your entire specification repository and get a formatted report with readiness scores, band distributions, and ranked improvement recommendations, check out our licensed product //spec-analysis. Contact the developer for more info.
187
+
188
+ ## Requirements
189
+ - Node.js (for the `codewhale-history` command)
190
+ - [CodeWhale](https://codewhale.net/en/docs)
191
+
192
+ ## Contact Developer
172
193
  [species8472](mailto:swyuri@yahoo.com)
@@ -1,4 +1,21 @@
1
1
  #!/usr/bin/env node
2
+ /**
3
+ * Copyright (C) 2026 Celestial Consulting Ltd
4
+ *
5
+ * This program is free software: you can redistribute it and/or modify
6
+ * it under the terms of the GNU Affero General Public License as
7
+ * published by the Free Software Foundation, either version 3 of the
8
+ * License, or (at your option) any later version.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
17
+ */
18
+
2
19
  /**
3
20
  * Office Document Text Extractor
4
21
  *
package/_list_sessions.js CHANGED
@@ -1,4 +1,21 @@
1
1
  #!/usr/bin/env node
2
+ /**
3
+ * Copyright (C) 2026 Celestial Consulting Ltd
4
+ *
5
+ * This program is free software: you can redistribute it and/or modify
6
+ * it under the terms of the GNU Affero General Public License as
7
+ * published by the Free Software Foundation, either version 3 of the
8
+ * License, or (at your option) any later version.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
17
+ */
18
+
2
19
  const fs = require('fs');
3
20
  const path = require('path');
4
21
  const os = require('os');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codewhale.history",
3
- "version": "2.11.9",
3
+ "version": "2.11.11",
4
4
  "description": "CodeWhale utility commands: session history, tool listing, file snapshot, interactive code quiz — global install",
5
5
  "bin": {
6
6
  "codewhale-history": "./_list_sessions.js",
@@ -3,6 +3,21 @@ name: history
3
3
  description: Lists all CodeWhale chat sessions for the current workspace with message count, tokens, cost, and totals. Triggered when the user types `//history`.
4
4
  ---
5
5
 
6
+ Copyright (C) 2026 Celestial Consulting Ltd
7
+
8
+ This program is free software: you can redistribute it and/or modify
9
+ it under the terms of the GNU Affero General Public License as
10
+ published by the Free Software Foundation, either version 3 of the
11
+ License, or (at your option) any later version.
12
+
13
+ This program is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU Affero General Public License for more details.
17
+
18
+ You should have received a copy of the GNU Affero General Public License
19
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
20
+
6
21
  # `//history` Command
7
22
 
8
23
  When the user types `//history`, list all chat sessions from the current workspace with their metadata and a total summary row.
@@ -3,6 +3,21 @@ name: snapshot
3
3
  description: Toggle automatic pre-edit file snapshotting on or off. Triggered by //snapshot on and //snapshot off.
4
4
  ---
5
5
 
6
+ Copyright (C) 2026 Celestial Consulting Ltd
7
+
8
+ This program is free software: you can redistribute it and/or modify
9
+ it under the terms of the GNU Affero General Public License as
10
+ published by the Free Software Foundation, either version 3 of the
11
+ License, or (at your option) any later version.
12
+
13
+ This program is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU Affero General Public License for more details.
17
+
18
+ You should have received a copy of the GNU Affero General Public License
19
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
20
+
6
21
  # `//snapshot` Command
7
22
 
8
23
  When the user types `//snapshot on`, `//snapshot off`, or `//snapshot status`, manage automatic file backup before edits.
@@ -3,6 +3,21 @@ name: teach-me
3
3
  description: Interactive code-teaching quiz. Selects random snippets from the current project and quizzes the user on application logic, language semantics, or BA documentation quality. Triggered by 'teach me', 'quiz me', 'test my knowledge', 'code quiz', or 'drill me'. Supports difficulty levels 1–5 and four themes: passive (explain), interactive (reconstruct), solid (anti-pattern detection), spec (spec-to-code traceability), and ba-gates (BA documentation quality analysis).
4
4
  ---
5
5
 
6
+ Copyright (C) 2026 Celestial Consulting Ltd
7
+
8
+ This program is free software: you can redistribute it and/or modify
9
+ it under the terms of the GNU Affero General Public License as
10
+ published by the Free Software Foundation, either version 3 of the
11
+ License, or (at your option) any later version.
12
+
13
+ This program is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU Affero General Public License for more details.
17
+
18
+ You should have received a copy of the GNU Affero General Public License
19
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
20
+
6
21
  # Teach Me — Interactive Code Quiz
7
22
 
8
23
  An interactive teaching session that randomly selects code snippets or BA documentation fragments from the
@@ -3,6 +3,21 @@ name: tools
3
3
  description: Lists all available tools and their capabilities. Triggered when the user types /tools.
4
4
  ---
5
5
 
6
+ Copyright (C) 2026 Celestial Consulting Ltd
7
+
8
+ This program is free software: you can redistribute it and/or modify
9
+ it under the terms of the GNU Affero General Public License as
10
+ published by the Free Software Foundation, either version 3 of the
11
+ License, or (at your option) any later version.
12
+
13
+ This program is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU Affero General Public License for more details.
17
+
18
+ You should have received a copy of the GNU Affero General Public License
19
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
20
+
6
21
  # `//tools` Command
7
22
 
8
23
  When the user types `//tools`, enumerate every tool available to the model in this session, grouped by category with a brief description of each. I want the tool listing, not just the activation notice.
package/tools-install.js CHANGED
@@ -1,4 +1,21 @@
1
1
  #!/usr/bin/env node
2
+ /**
3
+ * Copyright (C) 2026 Celestial Consulting Ltd
4
+ *
5
+ * This program is free software: you can redistribute it and/or modify
6
+ * it under the terms of the GNU Affero General Public License as
7
+ * published by the Free Software Foundation, either version 3 of the
8
+ * License, or (at your option) any later version.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
17
+ */
18
+
2
19
  /**
3
20
  * CodeWhale Tools Installer
4
21
  *