chkit 0.1.0-beta.10 → 0.1.0-beta.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,4 +1,12 @@
|
|
|
1
1
|
import { type ChxPlugin } from '../../plugins.js';
|
|
2
|
+
/**
|
|
3
|
+
* Walk up from `cwd` to find the best directory for installing agent skills.
|
|
4
|
+
*
|
|
5
|
+
* 1. Look for agentic markers (.claude/, .cursor/, CLAUDE.md, etc.)
|
|
6
|
+
* 2. Fall back to the git root (.git)
|
|
7
|
+
* 3. Fall back to `cwd`
|
|
8
|
+
*/
|
|
9
|
+
export declare function findAgentRoot(cwd: string): string;
|
|
2
10
|
export declare const SKILL_INSTALL_COMMAND = "npx skills add obsessiondb/chkit";
|
|
3
11
|
export declare const HINT_INTERVAL_MS: number;
|
|
4
12
|
export interface SkillHintState {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-hint.d.ts","sourceRoot":"","sources":["../../../src/bin/internal-plugins/skill-hint.ts"],"names":[],"mappings":"AAKA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"skill-hint.d.ts","sourceRoot":"","sources":["../../../src/bin/internal-plugins/skill-hint.ts"],"names":[],"mappings":"AAKA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAI/D;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAsBjD;AAED,eAAO,MAAM,qBAAqB,qCAAqC,CAAA;AACvE,eAAO,MAAM,gBAAgB,QAA2B,CAAA;AAExD,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,IAAI,OAAO,CAAA;IAC3B,SAAS,IAAI,cAAc,CAAA;IAC3B,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAA;IACvC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAC9B,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAChC,GAAG,IAAI,MAAM,CAAA;CACd;AA8DD,wBAAgB,qBAAqB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,SAAS,CAqCnF"}
|
|
@@ -1,8 +1,41 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
|
-
import { join } from 'node:path';
|
|
3
|
+
import { dirname, join } from 'node:path';
|
|
4
4
|
import process from 'node:process';
|
|
5
5
|
import { definePlugin } from '../../plugins.js';
|
|
6
|
+
const AGENTIC_MARKERS = ['.claude', '.cursor', 'CLAUDE.md', '.cursorrules', '.github/copilot-instructions.md'];
|
|
7
|
+
/**
|
|
8
|
+
* Walk up from `cwd` to find the best directory for installing agent skills.
|
|
9
|
+
*
|
|
10
|
+
* 1. Look for agentic markers (.claude/, .cursor/, CLAUDE.md, etc.)
|
|
11
|
+
* 2. Fall back to the git root (.git)
|
|
12
|
+
* 3. Fall back to `cwd`
|
|
13
|
+
*/
|
|
14
|
+
export function findAgentRoot(cwd) {
|
|
15
|
+
// Pass 1: look for agentic markers
|
|
16
|
+
let dir = cwd;
|
|
17
|
+
while (true) {
|
|
18
|
+
for (const marker of AGENTIC_MARKERS) {
|
|
19
|
+
if (existsSync(join(dir, marker)))
|
|
20
|
+
return dir;
|
|
21
|
+
}
|
|
22
|
+
const parent = dirname(dir);
|
|
23
|
+
if (parent === dir)
|
|
24
|
+
break;
|
|
25
|
+
dir = parent;
|
|
26
|
+
}
|
|
27
|
+
// Pass 2: look for .git
|
|
28
|
+
dir = cwd;
|
|
29
|
+
while (true) {
|
|
30
|
+
if (existsSync(join(dir, '.git')))
|
|
31
|
+
return dir;
|
|
32
|
+
const parent = dirname(dir);
|
|
33
|
+
if (parent === dir)
|
|
34
|
+
break;
|
|
35
|
+
dir = parent;
|
|
36
|
+
}
|
|
37
|
+
return cwd;
|
|
38
|
+
}
|
|
6
39
|
export const SKILL_INSTALL_COMMAND = 'npx skills add obsessiondb/chkit';
|
|
7
40
|
export const HINT_INTERVAL_MS = 30 * 24 * 60 * 60 * 1000; // 30 days
|
|
8
41
|
function getStateDir() {
|
|
@@ -13,8 +46,8 @@ function getStateFilePath() {
|
|
|
13
46
|
}
|
|
14
47
|
const defaultDeps = {
|
|
15
48
|
isSkillInstalled() {
|
|
16
|
-
const
|
|
17
|
-
const projectSkill = join(
|
|
49
|
+
const root = findAgentRoot(process.cwd());
|
|
50
|
+
const projectSkill = join(root, '.claude', 'skills', 'chkit', 'SKILL.md');
|
|
18
51
|
const globalSkill = join(homedir(), '.claude', 'skills', 'chkit', 'SKILL.md');
|
|
19
52
|
return existsSync(projectSkill) || existsSync(globalSkill);
|
|
20
53
|
},
|
|
@@ -50,7 +83,7 @@ const defaultDeps = {
|
|
|
50
83
|
const { execSync } = await import('node:child_process');
|
|
51
84
|
try {
|
|
52
85
|
console.error('');
|
|
53
|
-
execSync(SKILL_INSTALL_COMMAND, { stdio: 'inherit' });
|
|
86
|
+
execSync(SKILL_INSTALL_COMMAND, { cwd: findAgentRoot(process.cwd()), stdio: 'inherit' });
|
|
54
87
|
return true;
|
|
55
88
|
}
|
|
56
89
|
catch {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-hint.js","sourceRoot":"","sources":["../../../src/bin/internal-plugins/skill-hint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"skill-hint.js","sourceRoot":"","sources":["../../../src/bin/internal-plugins/skill-hint.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chkit",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.11",
|
|
4
|
+
"description": "ClickHouse schema and migration CLI for TypeScript projects",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "ObsessionDB",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"clickhouse",
|
|
9
|
+
"schema",
|
|
10
|
+
"migrations",
|
|
11
|
+
"typescript",
|
|
12
|
+
"database",
|
|
13
|
+
"cli"
|
|
14
|
+
],
|
|
4
15
|
"homepage": "https://chkit.obsessiondb.com",
|
|
16
|
+
"bugs": {
|
|
17
|
+
"url": "https://github.com/obsessiondb/chkit/issues"
|
|
18
|
+
},
|
|
5
19
|
"repository": {
|
|
6
20
|
"type": "git",
|
|
7
21
|
"url": "https://github.com/obsessiondb/chkit.git",
|
|
@@ -25,9 +39,9 @@
|
|
|
25
39
|
"clean": "rm -rf dist"
|
|
26
40
|
},
|
|
27
41
|
"dependencies": {
|
|
28
|
-
"@chkit/clickhouse": "0.1.0-beta.
|
|
29
|
-
"@chkit/codegen": "0.1.0-beta.
|
|
30
|
-
"@chkit/core": "0.1.0-beta.
|
|
42
|
+
"@chkit/clickhouse": "0.1.0-beta.11",
|
|
43
|
+
"@chkit/codegen": "0.1.0-beta.11",
|
|
44
|
+
"@chkit/core": "0.1.0-beta.11",
|
|
31
45
|
"fast-glob": "^3.3.2"
|
|
32
46
|
}
|
|
33
47
|
}
|