@codemieai/code 0.0.40 → 0.0.41
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/README.md +2 -3
- package/bin/codemie-opencode.js +8 -1
- package/dist/agents/codemie-code/skills/index.d.ts +4 -0
- package/dist/agents/codemie-code/skills/index.d.ts.map +1 -1
- package/dist/agents/codemie-code/skills/index.js +4 -0
- package/dist/agents/codemie-code/skills/index.js.map +1 -1
- package/dist/agents/codemie-code/skills/sync/SkillSync.d.ts +52 -0
- package/dist/agents/codemie-code/skills/sync/SkillSync.d.ts.map +1 -0
- package/dist/agents/codemie-code/skills/sync/SkillSync.js +165 -0
- package/dist/agents/codemie-code/skills/sync/SkillSync.js.map +1 -0
- package/dist/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +17 -14
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts +10 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +126 -3
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/core/types.d.ts +10 -0
- package/dist/agents/core/types.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.d.ts +1 -8
- package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/claude/claude.plugin.js +95 -100
- package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/claude/plugin/codemie-statusline.mjs +42 -0
- package/dist/agents/plugins/codemie-code-binary.d.ts +17 -0
- package/dist/agents/plugins/codemie-code-binary.d.ts.map +1 -0
- package/dist/agents/plugins/codemie-code-binary.js +94 -0
- package/dist/agents/plugins/codemie-code-binary.js.map +1 -0
- package/dist/agents/plugins/codemie-code.plugin.d.ts +53 -12
- package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.js +359 -147
- package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
- package/dist/agents/plugins/gemini/gemini.plugin.d.ts +8 -0
- package/dist/agents/plugins/gemini/gemini.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/gemini/gemini.plugin.js +44 -0
- package/dist/agents/plugins/gemini/gemini.plugin.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode-model-configs.d.ts +12 -2
- package/dist/agents/plugins/opencode/opencode-model-configs.d.ts.map +1 -1
- package/dist/agents/plugins/opencode/opencode-model-configs.js +240 -24
- package/dist/agents/plugins/opencode/opencode-model-configs.js.map +1 -1
- package/dist/agents/plugins/opencode/opencode.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/opencode/opencode.plugin.js +62 -24
- package/dist/agents/plugins/opencode/opencode.plugin.js.map +1 -1
- package/dist/agents/registry.d.ts.map +1 -1
- package/dist/agents/registry.js +8 -7
- package/dist/agents/registry.js.map +1 -1
- package/dist/cli/commands/doctor/checks/AgentsCheck.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/AgentsCheck.js +5 -2
- package/dist/cli/commands/doctor/checks/AgentsCheck.js.map +1 -1
- package/dist/cli/commands/doctor/checks/FrameworksCheck.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/FrameworksCheck.js +5 -2
- package/dist/cli/commands/doctor/checks/FrameworksCheck.js.map +1 -1
- package/dist/cli/commands/doctor/index.d.ts.map +1 -1
- package/dist/cli/commands/doctor/index.js +87 -91
- package/dist/cli/commands/doctor/index.js.map +1 -1
- package/dist/cli/commands/hook.d.ts.map +1 -1
- package/dist/cli/commands/hook.js +23 -0
- package/dist/cli/commands/hook.js.map +1 -1
- package/dist/cli/commands/skill.d.ts.map +1 -1
- package/dist/cli/commands/skill.js +80 -1
- package/dist/cli/commands/skill.js.map +1 -1
- package/dist/cli/index.js +7 -13
- package/dist/cli/index.js.map +1 -1
- package/dist/providers/plugins/sso/sso.auth.d.ts +3 -1
- package/dist/providers/plugins/sso/sso.auth.d.ts.map +1 -1
- package/dist/providers/plugins/sso/sso.auth.js +70 -12
- package/dist/providers/plugins/sso/sso.auth.js.map +1 -1
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +16 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/native-installer.d.ts.map +1 -1
- package/dist/utils/native-installer.js +35 -0
- package/dist/utils/native-installer.js.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -90,7 +90,7 @@ npm install @codemieai/code
|
|
|
90
90
|
npx @codemieai/code --help
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
-
**Note:** Agent shortcuts (`codemie-claude`, `codemie-code`, etc.) require global installation.
|
|
93
|
+
**Note:** Agent shortcuts (`codemie-claude`, `codemie-code`, `codemie-opencode`, etc.) require global installation.
|
|
94
94
|
|
|
95
95
|
### From Source
|
|
96
96
|
|
|
@@ -154,7 +154,6 @@ codemie-gemini "Implement a REST API"
|
|
|
154
154
|
|
|
155
155
|
# Install OpenCode
|
|
156
156
|
codemie install opencode
|
|
157
|
-
codemie-opencode "Generate unit tests for my service"
|
|
158
157
|
|
|
159
158
|
# Install Claude Code ACP (for IDE integration)
|
|
160
159
|
codemie install claude-acp
|
|
@@ -239,7 +238,7 @@ These commands analyze your actual codebase to create tailored documentation and
|
|
|
239
238
|
|
|
240
239
|
### OpenCode Session Metrics
|
|
241
240
|
|
|
242
|
-
When using OpenCode
|
|
241
|
+
When using OpenCode, CodeMie automatically extracts and tracks session metrics:
|
|
243
242
|
|
|
244
243
|
**Manual Metrics Processing:**
|
|
245
244
|
```bash
|
package/bin/codemie-opencode.js
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* OpenCode Agent Entry Point
|
|
5
|
+
* Direct entry point for codemie-opencode command
|
|
6
|
+
*/
|
|
7
|
+
|
|
2
8
|
import { AgentCLI } from '../dist/agents/core/AgentCLI.js';
|
|
3
9
|
import { AgentRegistry } from '../dist/agents/registry.js';
|
|
4
10
|
|
|
5
11
|
const agent = AgentRegistry.getAgent('opencode');
|
|
6
12
|
if (!agent) {
|
|
7
|
-
console.error('OpenCode agent not found
|
|
13
|
+
console.error('✗ OpenCode agent not found in registry');
|
|
8
14
|
process.exit(1);
|
|
9
15
|
}
|
|
16
|
+
|
|
10
17
|
const cli = new AgentCLI(agent);
|
|
11
18
|
await cli.run(process.argv);
|
|
@@ -5,8 +5,12 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export { SkillManager } from './core/SkillManager.js';
|
|
7
7
|
export { SkillDiscovery } from './core/SkillDiscovery.js';
|
|
8
|
+
export { SkillSync } from './sync/SkillSync.js';
|
|
9
|
+
export type { SyncOptions, SyncResult } from './sync/SkillSync.js';
|
|
8
10
|
export type { Skill, SkillMetadata, SkillSource, SkillParseResult, SkillDiscoveryOptions, SkillValidationResult, SkillsConfig, } from './core/types.js';
|
|
9
11
|
export { SkillMetadataSchema } from './core/types.js';
|
|
10
12
|
export { parseFrontmatter, hasFrontmatter, extractMetadata, extractContent, FrontmatterParseError, } from './utils/frontmatter.js';
|
|
11
13
|
export type { FrontmatterResult } from './utils/frontmatter.js';
|
|
14
|
+
export { extractSkillPatterns, isValidSkillName, } from './utils/pattern-matcher.js';
|
|
15
|
+
export type { SkillPattern, PatternMatchResult } from './utils/pattern-matcher.js';
|
|
12
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/codemie-code/skills/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,YAAY,EACV,KAAK,EACL,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/codemie-code/skills/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGnE,YAAY,EACV,KAAK,EACL,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,OAAO,EACL,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -6,7 +6,11 @@
|
|
|
6
6
|
// Core exports
|
|
7
7
|
export { SkillManager } from './core/SkillManager.js';
|
|
8
8
|
export { SkillDiscovery } from './core/SkillDiscovery.js';
|
|
9
|
+
// Sync exports
|
|
10
|
+
export { SkillSync } from './sync/SkillSync.js';
|
|
9
11
|
export { SkillMetadataSchema } from './core/types.js';
|
|
10
12
|
// Utility exports
|
|
11
13
|
export { parseFrontmatter, hasFrontmatter, extractMetadata, extractContent, FrontmatterParseError, } from './utils/frontmatter.js';
|
|
14
|
+
// Pattern matcher exports
|
|
15
|
+
export { extractSkillPatterns, isValidSkillName, } from './utils/pattern-matcher.js';
|
|
12
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/codemie-code/skills/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAe;AACf,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/codemie-code/skills/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAe;AACf,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAahD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,kBAAkB;AAClB,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAIhC,0BAA0B;AAC1B,OAAO,EACL,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Options for skill sync operation
|
|
3
|
+
*/
|
|
4
|
+
export interface SyncOptions {
|
|
5
|
+
/** Project working directory */
|
|
6
|
+
cwd?: string;
|
|
7
|
+
/** Remove orphaned synced skills */
|
|
8
|
+
clean?: boolean;
|
|
9
|
+
/** Preview without writing */
|
|
10
|
+
dryRun?: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Result of a sync operation
|
|
14
|
+
*/
|
|
15
|
+
export interface SyncResult {
|
|
16
|
+
/** Skills copied/updated */
|
|
17
|
+
synced: string[];
|
|
18
|
+
/** Skills unchanged (up-to-date) */
|
|
19
|
+
skipped: string[];
|
|
20
|
+
/** Skills cleaned up (--clean) */
|
|
21
|
+
removed: string[];
|
|
22
|
+
/** Non-fatal errors */
|
|
23
|
+
errors: string[];
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Sync CodeMie-managed skills into Claude Code's .claude/skills/ directory.
|
|
27
|
+
*
|
|
28
|
+
* Uses SkillManager to discover ALL skills from ALL sources (project, global,
|
|
29
|
+
* plugin, mode-specific) and copies entire skill directories (SKILL.md +
|
|
30
|
+
* reference files) to the target. Tracks synced state via a manifest file
|
|
31
|
+
* for incremental sync (mtime comparison).
|
|
32
|
+
*/
|
|
33
|
+
export declare class SkillSync {
|
|
34
|
+
private readonly MANIFEST_FILE;
|
|
35
|
+
/**
|
|
36
|
+
* Sync all CodeMie skills to .claude/skills/
|
|
37
|
+
*/
|
|
38
|
+
syncToClaude(options?: SyncOptions): Promise<SyncResult>;
|
|
39
|
+
/**
|
|
40
|
+
* Load sync manifest from target directory
|
|
41
|
+
*/
|
|
42
|
+
private loadManifest;
|
|
43
|
+
/**
|
|
44
|
+
* Save sync manifest to target directory
|
|
45
|
+
*/
|
|
46
|
+
private saveManifest;
|
|
47
|
+
/**
|
|
48
|
+
* Recursively copy a directory
|
|
49
|
+
*/
|
|
50
|
+
private copyDirectory;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=SkillSync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkillSync.d.ts","sourceRoot":"","sources":["../../../../../src/agents/codemie-code/skills/sync/SkillSync.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,4BAA4B;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,kCAAkC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,uBAAuB;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AA0BD;;;;;;;GAOG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;IAEtD;;OAEG;IACG,YAAY,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAyHlE;;OAEG;YACW,YAAY;IAe1B;;OAEG;YACW,YAAY;IAK1B;;OAEG;YACW,aAAa;CAoB5B"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { readdir, stat, mkdir, copyFile, readFile, writeFile, rm } from 'fs/promises';
|
|
2
|
+
import { existsSync } from 'fs';
|
|
3
|
+
import { join, dirname } from 'path';
|
|
4
|
+
import { logger } from '../../../../utils/logger.js';
|
|
5
|
+
import { SkillManager } from '../core/SkillManager.js';
|
|
6
|
+
/**
|
|
7
|
+
* Sync CodeMie-managed skills into Claude Code's .claude/skills/ directory.
|
|
8
|
+
*
|
|
9
|
+
* Uses SkillManager to discover ALL skills from ALL sources (project, global,
|
|
10
|
+
* plugin, mode-specific) and copies entire skill directories (SKILL.md +
|
|
11
|
+
* reference files) to the target. Tracks synced state via a manifest file
|
|
12
|
+
* for incremental sync (mtime comparison).
|
|
13
|
+
*/
|
|
14
|
+
export class SkillSync {
|
|
15
|
+
MANIFEST_FILE = '.codemie-sync.json';
|
|
16
|
+
/**
|
|
17
|
+
* Sync all CodeMie skills to .claude/skills/
|
|
18
|
+
*/
|
|
19
|
+
async syncToClaude(options = {}) {
|
|
20
|
+
const { cwd = process.cwd(), clean = false, dryRun = false } = options;
|
|
21
|
+
const result = {
|
|
22
|
+
synced: [],
|
|
23
|
+
skipped: [],
|
|
24
|
+
removed: [],
|
|
25
|
+
errors: [],
|
|
26
|
+
};
|
|
27
|
+
const targetBase = join(cwd, '.claude', 'skills');
|
|
28
|
+
try {
|
|
29
|
+
// Discover all skills
|
|
30
|
+
const manager = SkillManager.getInstance();
|
|
31
|
+
manager.reload(); // Force fresh discovery
|
|
32
|
+
const skills = await manager.listSkills({ cwd });
|
|
33
|
+
if (skills.length === 0) {
|
|
34
|
+
logger.debug('[SkillSync] No skills discovered, nothing to sync');
|
|
35
|
+
return result;
|
|
36
|
+
}
|
|
37
|
+
// Ensure target directory exists
|
|
38
|
+
if (!dryRun) {
|
|
39
|
+
await mkdir(targetBase, { recursive: true });
|
|
40
|
+
}
|
|
41
|
+
// Load existing manifest
|
|
42
|
+
const manifest = await this.loadManifest(targetBase);
|
|
43
|
+
// Track which skill names we process (for clean-up)
|
|
44
|
+
const processedNames = new Set();
|
|
45
|
+
// Sync each skill
|
|
46
|
+
for (const skill of skills) {
|
|
47
|
+
const skillName = skill.metadata.name;
|
|
48
|
+
processedNames.add(skillName);
|
|
49
|
+
const sourceDir = dirname(skill.filePath);
|
|
50
|
+
const targetDir = join(targetBase, skillName);
|
|
51
|
+
try {
|
|
52
|
+
// Check if sync is needed (mtime comparison)
|
|
53
|
+
const sourceStat = await stat(skill.filePath);
|
|
54
|
+
const manifestEntry = manifest.skills[skillName];
|
|
55
|
+
if (manifestEntry &&
|
|
56
|
+
manifestEntry.sourcePath === skill.filePath &&
|
|
57
|
+
manifestEntry.mtimeMs === sourceStat.mtimeMs) {
|
|
58
|
+
result.skipped.push(skillName);
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
if (dryRun) {
|
|
62
|
+
result.synced.push(skillName);
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
// Copy entire source directory to target
|
|
66
|
+
await this.copyDirectory(sourceDir, targetDir);
|
|
67
|
+
// Update manifest entry
|
|
68
|
+
manifest.skills[skillName] = {
|
|
69
|
+
source: skill.source,
|
|
70
|
+
sourcePath: skill.filePath,
|
|
71
|
+
syncedAt: new Date().toISOString(),
|
|
72
|
+
mtimeMs: sourceStat.mtimeMs,
|
|
73
|
+
};
|
|
74
|
+
result.synced.push(skillName);
|
|
75
|
+
logger.debug(`[SkillSync] Synced: ${skillName} (${skill.source})`);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
79
|
+
result.errors.push(`${skillName}: ${msg}`);
|
|
80
|
+
logger.debug(`[SkillSync] Error syncing ${skillName}: ${msg}`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
// Clean orphaned skills (in manifest but no longer discovered)
|
|
84
|
+
if (clean) {
|
|
85
|
+
for (const name of Object.keys(manifest.skills)) {
|
|
86
|
+
if (!processedNames.has(name)) {
|
|
87
|
+
const orphanDir = join(targetBase, name);
|
|
88
|
+
if (dryRun) {
|
|
89
|
+
result.removed.push(name);
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
try {
|
|
93
|
+
if (existsSync(orphanDir)) {
|
|
94
|
+
await rm(orphanDir, { recursive: true, force: true });
|
|
95
|
+
}
|
|
96
|
+
delete manifest.skills[name];
|
|
97
|
+
result.removed.push(name);
|
|
98
|
+
logger.debug(`[SkillSync] Removed orphaned skill: ${name}`);
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
102
|
+
result.errors.push(`clean ${name}: ${msg}`);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
// Write updated manifest
|
|
108
|
+
if (!dryRun) {
|
|
109
|
+
manifest.lastSync = new Date().toISOString();
|
|
110
|
+
await this.saveManifest(targetBase, manifest);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
115
|
+
result.errors.push(`sync failed: ${msg}`);
|
|
116
|
+
logger.debug(`[SkillSync] Sync failed: ${msg}`);
|
|
117
|
+
}
|
|
118
|
+
return result;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Load sync manifest from target directory
|
|
122
|
+
*/
|
|
123
|
+
async loadManifest(targetBase) {
|
|
124
|
+
const manifestPath = join(targetBase, this.MANIFEST_FILE);
|
|
125
|
+
try {
|
|
126
|
+
if (existsSync(manifestPath)) {
|
|
127
|
+
const content = await readFile(manifestPath, 'utf-8');
|
|
128
|
+
return JSON.parse(content);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
logger.debug(`[SkillSync] Could not load manifest, starting fresh: ${error}`);
|
|
133
|
+
}
|
|
134
|
+
return { lastSync: '', skills: {} };
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Save sync manifest to target directory
|
|
138
|
+
*/
|
|
139
|
+
async saveManifest(targetBase, manifest) {
|
|
140
|
+
const manifestPath = join(targetBase, this.MANIFEST_FILE);
|
|
141
|
+
await writeFile(manifestPath, JSON.stringify(manifest, null, 2), 'utf-8');
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Recursively copy a directory
|
|
145
|
+
*/
|
|
146
|
+
async copyDirectory(src, dest) {
|
|
147
|
+
await mkdir(dest, { recursive: true });
|
|
148
|
+
const entries = await readdir(src, { withFileTypes: true });
|
|
149
|
+
for (const entry of entries) {
|
|
150
|
+
const srcPath = join(src, entry.name);
|
|
151
|
+
const destPath = join(dest, entry.name);
|
|
152
|
+
if (entry.isDirectory()) {
|
|
153
|
+
// Skip hidden dirs and node_modules
|
|
154
|
+
if (entry.name.startsWith('.') || entry.name === 'node_modules') {
|
|
155
|
+
continue;
|
|
156
|
+
}
|
|
157
|
+
await this.copyDirectory(srcPath, destPath);
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
await copyFile(srcPath, destPath);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=SkillSync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkillSync.js","sourceRoot":"","sources":["../../../../../src/agents/codemie-code/skills/sync/SkillSync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentCLI.d.ts","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAW1C;;;GAGG;AACH,qBAAa,QAAQ;IAIP,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;gBAEd,OAAO,EAAE,YAAY;IASzC;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,YAAY;
|
|
1
|
+
{"version":3,"file":"AgentCLI.d.ts","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAW1C;;;GAGG;AACH,qBAAa,QAAQ;IAIP,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;gBAEd,OAAO,EAAE,YAAY;IASzC;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;IACH,OAAO,CAAC,YAAY;IA8CpB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAQlC;;OAEG;YACW,SAAS;IAqHvB;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;YACW,UAAU;IAyExB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgD7B;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzC"}
|
|
@@ -54,6 +54,7 @@ export class AgentCLI {
|
|
|
54
54
|
.description(`CodeMie ${this.adapter.displayName} - ${this.adapter.description}`)
|
|
55
55
|
.version(this.version)
|
|
56
56
|
.option('-s, --silent', 'Enable silent mode')
|
|
57
|
+
.option('--status', 'Enable status bar (shows model, context usage, git branch, and cost)')
|
|
57
58
|
.option('--profile <name>', 'Use specific provider profile')
|
|
58
59
|
.option('--provider <provider>', 'Override provider (ai-run-sso, litellm, ollama)')
|
|
59
60
|
.option('-m, --model <model>', 'Override model')
|
|
@@ -73,19 +74,17 @@ export class AgentCLI {
|
|
|
73
74
|
.action(async () => {
|
|
74
75
|
await this.handleHealthCheck();
|
|
75
76
|
});
|
|
76
|
-
// Add init command for frameworks
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
});
|
|
88
|
-
}
|
|
77
|
+
// Add init command for frameworks
|
|
78
|
+
this.program
|
|
79
|
+
.command('init')
|
|
80
|
+
.description('Initialize development framework')
|
|
81
|
+
.argument('[framework]', 'Framework to initialize (speckit, bmad)')
|
|
82
|
+
.option('-l, --list', 'List available frameworks')
|
|
83
|
+
.option('--force', 'Force re-initialization')
|
|
84
|
+
.option('--project-name <name>', 'Project name for framework initialization')
|
|
85
|
+
.action(async (framework, options) => {
|
|
86
|
+
await this.handleInit(framework, options);
|
|
87
|
+
});
|
|
89
88
|
}
|
|
90
89
|
/**
|
|
91
90
|
* Display Windows-specific guidance for PATH refresh issues
|
|
@@ -176,6 +175,10 @@ export class AgentCLI {
|
|
|
176
175
|
// Pass config info for welcome message display
|
|
177
176
|
providerEnv.CODEMIE_PROFILE_NAME = config.name || 'default';
|
|
178
177
|
providerEnv.CODEMIE_CLI_VERSION = this.version;
|
|
178
|
+
// Pass status flag to lifecycle hooks
|
|
179
|
+
if (options.status) {
|
|
180
|
+
providerEnv.CODEMIE_STATUS = '1';
|
|
181
|
+
}
|
|
179
182
|
// Serialize full profile config for proxy plugins (read once at CLI level)
|
|
180
183
|
providerEnv.CODEMIE_PROFILE_CONFIG = JSON.stringify(config);
|
|
181
184
|
// Set profile name in logger for log formatting
|
|
@@ -300,7 +303,7 @@ export class AgentCLI {
|
|
|
300
303
|
collectPassThroughArgs(args, options) {
|
|
301
304
|
const agentArgs = [...args];
|
|
302
305
|
// Config-only options (not passed to agent, handled by CodeMie CLI)
|
|
303
|
-
const configOnlyOptions = ['profile', 'provider', 'apiKey', 'baseUrl', 'timeout', 'model', 'silent'];
|
|
306
|
+
const configOnlyOptions = ['profile', 'provider', 'apiKey', 'baseUrl', 'timeout', 'model', 'silent', 'status'];
|
|
304
307
|
for (const [key, value] of Object.entries(options)) {
|
|
305
308
|
// Skip config-only options (handled by CodeMie CLI layer)
|
|
306
309
|
if (configOnlyOptions.includes(key))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentCLI.js","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentCLI.js","sourceRoot":"","sources":["../../../src/agents/core/AgentCLI.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AgentMetadata, AgentAdapter, MCPConfigSummary } from './types.js';
|
|
1
|
+
import { AgentMetadata, AgentAdapter, MCPConfigSummary, VersionCompatibilityResult } from './types.js';
|
|
2
2
|
import { CodeMieProxy } from '../../providers/plugins/sso/index.js';
|
|
3
3
|
/**
|
|
4
4
|
* Base class for all agent adapters
|
|
@@ -54,6 +54,15 @@ export declare abstract class BaseAgentAdapter implements AgentAdapter {
|
|
|
54
54
|
* Get agent version
|
|
55
55
|
*/
|
|
56
56
|
getVersion(): Promise<string | null>;
|
|
57
|
+
/**
|
|
58
|
+
* Check if installed version is compatible with CodeMie
|
|
59
|
+
* Compares installed version against metadata.supportedVersion and
|
|
60
|
+
* metadata.minimumSupportedVersion. Agents override getVersion() only;
|
|
61
|
+
* the comparison logic is shared for all agents.
|
|
62
|
+
*
|
|
63
|
+
* @returns Version compatibility result with status and version info
|
|
64
|
+
*/
|
|
65
|
+
checkVersionCompatibility(): Promise<VersionCompatibilityResult>;
|
|
57
66
|
/**
|
|
58
67
|
* Run the agent
|
|
59
68
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseAgentAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAe,gBAAgB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseAgentAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAe,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAQpH,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAqBpE;;;GAGG;AACH,8BAAsB,gBAAiB,YAAW,YAAY;IAC5D,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;IAC5C,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC;gBAEtB,QAAQ,EAAE,aAAa;IAKnC;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIrC;;;OAGG;IACH,gBAAgB,IAAI,OAAO,YAAY,EAAE,kBAAkB,GAAG,SAAS;IAIvE;;;;;;OAMG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIjE,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAehC;;;;;OAKG;IACG,sBAAsB,CAAC,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrG;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAcrC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAa1C;;;;;;;OAOG;IACG,yBAAyB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAuGtE;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA8X/E;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmCxB;;;OAGG;cACa,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBjE;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;;;;;;;OASG;IACH,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;IAuFrE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAS,CAAC,eAAe,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IASxD;;;;;;;;;;;;;OAaG;cACa,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,SAAS;IA8BjB;;;;;;;;;;;;;;;OAeG;cACa,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC;CAoCjB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as npm from '../../utils/processes.js';
|
|
2
|
-
import { NpmError } from '../../utils/errors.js';
|
|
2
|
+
import { NpmError, createErrorContext } from '../../utils/errors.js';
|
|
3
3
|
import { exec } from '../../utils/processes.js';
|
|
4
|
+
import { compareVersions } from '../../utils/version-utils.js';
|
|
4
5
|
import { logger } from '../../utils/logger.js';
|
|
5
6
|
import { spawn } from 'child_process';
|
|
6
7
|
import { randomUUID } from 'crypto';
|
|
@@ -137,13 +138,135 @@ export class BaseAgentAdapter {
|
|
|
137
138
|
return null;
|
|
138
139
|
}
|
|
139
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* Check if installed version is compatible with CodeMie
|
|
143
|
+
* Compares installed version against metadata.supportedVersion and
|
|
144
|
+
* metadata.minimumSupportedVersion. Agents override getVersion() only;
|
|
145
|
+
* the comparison logic is shared for all agents.
|
|
146
|
+
*
|
|
147
|
+
* @returns Version compatibility result with status and version info
|
|
148
|
+
*/
|
|
149
|
+
async checkVersionCompatibility() {
|
|
150
|
+
const supportedVersion = this.metadata.supportedVersion || 'latest';
|
|
151
|
+
const minimumSupportedVersion = this.metadata.minimumSupportedVersion;
|
|
152
|
+
const installedVersion = await this.getVersion();
|
|
153
|
+
logger.debug('Checking version compatibility', {
|
|
154
|
+
agent: this.metadata.name,
|
|
155
|
+
installedVersion,
|
|
156
|
+
supportedVersion,
|
|
157
|
+
minimumSupportedVersion,
|
|
158
|
+
});
|
|
159
|
+
if (!installedVersion) {
|
|
160
|
+
return {
|
|
161
|
+
compatible: false,
|
|
162
|
+
installedVersion: null,
|
|
163
|
+
supportedVersion,
|
|
164
|
+
isNewer: false,
|
|
165
|
+
hasUpdate: false,
|
|
166
|
+
isBelowMinimum: false,
|
|
167
|
+
minimumSupportedVersion,
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
if (!this.metadata.supportedVersion) {
|
|
171
|
+
return {
|
|
172
|
+
compatible: true,
|
|
173
|
+
installedVersion,
|
|
174
|
+
supportedVersion: 'latest',
|
|
175
|
+
isNewer: false,
|
|
176
|
+
hasUpdate: false,
|
|
177
|
+
isBelowMinimum: false,
|
|
178
|
+
minimumSupportedVersion,
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
try {
|
|
182
|
+
const comparison = compareVersions(installedVersion, supportedVersion);
|
|
183
|
+
const hasUpdate = comparison < 0;
|
|
184
|
+
let isBelowMinimum = false;
|
|
185
|
+
if (minimumSupportedVersion) {
|
|
186
|
+
const minimumComparison = compareVersions(installedVersion, minimumSupportedVersion);
|
|
187
|
+
isBelowMinimum = minimumComparison < 0;
|
|
188
|
+
}
|
|
189
|
+
logger.debug('Version comparison result', {
|
|
190
|
+
agent: this.metadata.name,
|
|
191
|
+
comparison,
|
|
192
|
+
installedVersion,
|
|
193
|
+
supportedVersion,
|
|
194
|
+
minimumSupportedVersion,
|
|
195
|
+
compatible: comparison <= 0,
|
|
196
|
+
isNewer: comparison > 0,
|
|
197
|
+
hasUpdate,
|
|
198
|
+
isBelowMinimum,
|
|
199
|
+
});
|
|
200
|
+
return {
|
|
201
|
+
compatible: comparison <= 0,
|
|
202
|
+
installedVersion,
|
|
203
|
+
supportedVersion,
|
|
204
|
+
isNewer: comparison > 0,
|
|
205
|
+
hasUpdate,
|
|
206
|
+
isBelowMinimum,
|
|
207
|
+
minimumSupportedVersion,
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
catch (error) {
|
|
211
|
+
const errorContext = createErrorContext(error, { agent: this.metadata.name });
|
|
212
|
+
const isParseError = error instanceof Error && error.message.includes('Invalid semantic version');
|
|
213
|
+
if (isParseError) {
|
|
214
|
+
logger.warn('Non-standard version format detected, treating as incompatible', {
|
|
215
|
+
...errorContext,
|
|
216
|
+
operation: 'checkVersionCompatibility',
|
|
217
|
+
installedVersion,
|
|
218
|
+
supportedVersion,
|
|
219
|
+
minimumSupportedVersion,
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
logger.error('Version compatibility check failed unexpectedly', {
|
|
224
|
+
...errorContext,
|
|
225
|
+
operation: 'checkVersionCompatibility',
|
|
226
|
+
installedVersion,
|
|
227
|
+
supportedVersion,
|
|
228
|
+
minimumSupportedVersion,
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
return {
|
|
232
|
+
compatible: false,
|
|
233
|
+
installedVersion,
|
|
234
|
+
supportedVersion,
|
|
235
|
+
isNewer: false,
|
|
236
|
+
hasUpdate: false,
|
|
237
|
+
isBelowMinimum: false,
|
|
238
|
+
minimumSupportedVersion,
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
}
|
|
140
242
|
/**
|
|
141
243
|
* Run the agent
|
|
142
244
|
*/
|
|
143
245
|
async run(args, envOverrides) {
|
|
144
|
-
// Check version compatibility before running (for
|
|
145
|
-
if (
|
|
246
|
+
// Check version compatibility before running (only for agents with a supportedVersion configured)
|
|
247
|
+
if (this.metadata.supportedVersion) {
|
|
146
248
|
const compat = await this.checkVersionCompatibility();
|
|
249
|
+
// Scenario 0: Version is below minimum supported — hard block, no override
|
|
250
|
+
if (compat.isBelowMinimum) {
|
|
251
|
+
const installedDisplay = compat.installedVersion ?? 'unknown';
|
|
252
|
+
const minimumDisplay = compat.minimumSupportedVersion ?? 'unknown';
|
|
253
|
+
if (this.metadata.silentMode) {
|
|
254
|
+
// In silent/ACP mode stdout is a JSON-RPC stream — never write prose to it.
|
|
255
|
+
// Throw so the caller gets a structured error and the logger captures it.
|
|
256
|
+
throw new Error(`${this.displayName} v${installedDisplay} is below the minimum supported version ` +
|
|
257
|
+
`v${minimumDisplay}. Run: codemie install ${this.name}`);
|
|
258
|
+
}
|
|
259
|
+
console.log();
|
|
260
|
+
console.log(chalk.red(`✗ ${this.displayName} v${installedDisplay} is no longer supported`));
|
|
261
|
+
console.log(chalk.red(` Minimum required version: v${minimumDisplay}`));
|
|
262
|
+
console.log();
|
|
263
|
+
console.log(chalk.white(' This version is known to be incompatible with CodeMie and must be upgraded.'));
|
|
264
|
+
console.log();
|
|
265
|
+
console.log(chalk.white(' To upgrade, run:'));
|
|
266
|
+
console.log(chalk.blueBright(` codemie install ${this.name}`));
|
|
267
|
+
console.log();
|
|
268
|
+
process.exit(1);
|
|
269
|
+
}
|
|
147
270
|
if (compat.isNewer && !this.metadata.silentMode) {
|
|
148
271
|
// User is running a newer (untested) version
|
|
149
272
|
console.log();
|