toga-ai 1.0.14 → 1.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/scripts/install.js +6 -3
- package/skills/kickoff/SKILL.md +29 -0
package/package.json
CHANGED
package/scripts/install.js
CHANGED
|
@@ -25,7 +25,7 @@ const path = require('path');
|
|
|
25
25
|
const { spawnSync } = require('child_process');
|
|
26
26
|
const os = require('os');
|
|
27
27
|
|
|
28
|
-
const REPO_URL = 'https://github.com/
|
|
28
|
+
const REPO_URL = 'https://github.com/agilantsolutions/claude';
|
|
29
29
|
const REPO_ENV_VAR = 'TOGA_TECH_REPO';
|
|
30
30
|
const CACHE_FILE = path.join(os.homedir(), '.toga-tech-path');
|
|
31
31
|
|
|
@@ -187,7 +187,7 @@ function tryGitPull(repoDir) {
|
|
|
187
187
|
|
|
188
188
|
const afterCount = countMd(path.join(repoDir, 'knowledge'));
|
|
189
189
|
const newDocs = Math.max(0, afterCount - beforeCount);
|
|
190
|
-
return { pulled: true, newDocs, message: 'pulled ' + newDocs + ' new knowledge doc' + (newDocs !== 1 ? 's' : '') + ' from
|
|
190
|
+
return { pulled: true, newDocs, message: 'pulled ' + newDocs + ' new knowledge doc' + (newDocs !== 1 ? 's' : '') + ' from agilantsolutions/claude' };
|
|
191
191
|
}
|
|
192
192
|
|
|
193
193
|
/* ------------------------------------------------------------------ */
|
|
@@ -529,7 +529,7 @@ function main() {
|
|
|
529
529
|
if (pullResult.pulled) {
|
|
530
530
|
knowledgeDir = repoDir;
|
|
531
531
|
if (pullResult.newDocs > 0) {
|
|
532
|
-
gitUpdateLine = 'git update: pulled ' + pullResult.newDocs + ' new knowledge doc' + (pullResult.newDocs !== 1 ? 's' : '') + ' from
|
|
532
|
+
gitUpdateLine = 'git update: pulled ' + pullResult.newDocs + ' new knowledge doc' + (pullResult.newDocs !== 1 ? 's' : '') + ' from agilantsolutions/claude';
|
|
533
533
|
} else if (pullResult.message !== 'already up to date') {
|
|
534
534
|
gitUpdateLine = 'git update: ' + pullResult.message;
|
|
535
535
|
}
|
|
@@ -657,6 +657,9 @@ function main() {
|
|
|
657
657
|
const action = updateClaudeMd(projectRoot, skillNames, harnessDir, 'npm bundle v' + bundleVersion);
|
|
658
658
|
console.log(' ✓ CLAUDE.md ' + action);
|
|
659
659
|
|
|
660
|
+
// Write version marker so /kickoff can detect stale installs
|
|
661
|
+
try { fs.writeFileSync(path.join(claudeDir, 'toga-ai.version'), bundleVersion, 'utf8'); } catch (e) {}
|
|
662
|
+
|
|
660
663
|
// ECC global integration — detect and report
|
|
661
664
|
const eccPath = detectEcc();
|
|
662
665
|
if (eccPath) {
|
package/skills/kickoff/SKILL.md
CHANGED
|
@@ -5,6 +5,35 @@ description: Start-of-session context loader for TOGA Technology projects. Run t
|
|
|
5
5
|
|
|
6
6
|
# Kickoff — prime a coding session from the team knowledge base
|
|
7
7
|
|
|
8
|
+
## Step 0 — Auto-update check (runs before anything else)
|
|
9
|
+
|
|
10
|
+
Before loading any context, check whether the installed harness is up to date:
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
INSTALLED=$(cat .claude/toga-ai.version 2>/dev/null || echo "unknown")
|
|
14
|
+
LATEST=$(node -e "const {execSync}=require('child_process');try{process.stdout.write(execSync('npm view toga-ai version',{timeout:5000}).toString().trim())}catch{process.stdout.write('unknown')}" 2>/dev/null)
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
**If `INSTALLED` is `unknown`** — version file missing (project not yet installed). Skip and continue to Step 1.
|
|
18
|
+
|
|
19
|
+
**If `LATEST` is `unknown`** — npm unreachable (offline/timeout). Skip silently and continue to Step 1.
|
|
20
|
+
|
|
21
|
+
**If `INSTALLED` equals `LATEST`** — already up to date. Continue to Step 1.
|
|
22
|
+
|
|
23
|
+
**If `INSTALLED` differs from `LATEST`** — auto-upgrade now, then continue:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npx toga-ai@latest
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Tell the developer:
|
|
30
|
+
> "Updated toga-ai from v`INSTALLED` → v`LATEST`. Skills, agents, and rules refreshed."
|
|
31
|
+
|
|
32
|
+
If the upgrade fails, warn and continue — a stale install beats a blocked session:
|
|
33
|
+
> "⚠ Auto-update to v`LATEST` failed. Run `npx toga-ai@latest` manually when convenient."
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
8
37
|
Load the right knowledge before the developer starts coding. **Never assume missing
|
|
9
38
|
facts — ask.** Heuristics may pre-fill a *suggested default* in a question, but record
|
|
10
39
|
nothing without confirmation.
|