@gencode/agents 0.0.2 → 0.0.3

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.
Files changed (56) hide show
  1. package/dist/config-DJX-VM7S.js +198 -0
  2. package/dist/config-DJX-VM7S.js.map +1 -0
  3. package/dist/index-JD6Ye-N5.d.ts +149 -0
  4. package/dist/index-JD6Ye-N5.d.ts.map +1 -0
  5. package/dist/manager-qXa-NP0p.js +1651 -0
  6. package/dist/manager-qXa-NP0p.js.map +1 -0
  7. package/dist/message.d.ts +11 -0
  8. package/dist/message.d.ts.map +1 -0
  9. package/dist/message.js +46 -0
  10. package/dist/message.js.map +1 -0
  11. package/dist/runner/runner.d.ts.map +1 -1
  12. package/dist/runner/runner.js +33 -13
  13. package/dist/runner/runner.js.map +1 -1
  14. package/dist/runner/skill-usage.d.ts +29 -0
  15. package/dist/runner/skill-usage.d.ts.map +1 -0
  16. package/dist/runner/skill-usage.js +65 -0
  17. package/dist/runner/skill-usage.js.map +1 -0
  18. package/dist/security/command-dangerous-rules.d.ts +4 -0
  19. package/dist/security/command-dangerous-rules.d.ts.map +1 -0
  20. package/dist/security/command-dangerous-rules.js +26 -0
  21. package/dist/security/command-dangerous-rules.js.map +1 -0
  22. package/dist/security/command-parser.d.ts +3 -0
  23. package/dist/security/command-parser.d.ts.map +1 -0
  24. package/dist/security/command-parser.js +191 -0
  25. package/dist/security/command-parser.js.map +1 -0
  26. package/dist/security/command-path-guard.d.ts +10 -0
  27. package/dist/security/command-path-guard.d.ts.map +1 -0
  28. package/dist/security/command-path-guard.js +126 -0
  29. package/dist/security/command-path-guard.js.map +1 -0
  30. package/dist/security/command-policy-config.d.ts +5 -0
  31. package/dist/security/command-policy-config.d.ts.map +1 -0
  32. package/dist/security/command-policy-config.js +212 -0
  33. package/dist/security/command-policy-config.js.map +1 -0
  34. package/dist/security/command-policy-engine.d.ts +8 -0
  35. package/dist/security/command-policy-engine.d.ts.map +1 -0
  36. package/dist/security/command-policy-engine.js +122 -0
  37. package/dist/security/command-policy-engine.js.map +1 -0
  38. package/dist/security/command-policy-types.d.ts +67 -0
  39. package/dist/security/command-policy-types.d.ts.map +1 -0
  40. package/dist/security/command-policy-types.js +2 -0
  41. package/dist/security/command-policy-types.js.map +1 -0
  42. package/dist/security/command-safe-bins.d.ts +4 -0
  43. package/dist/security/command-safe-bins.d.ts.map +1 -0
  44. package/dist/security/command-safe-bins.js +84 -0
  45. package/dist/security/command-safe-bins.js.map +1 -0
  46. package/dist/security/command-trusted-executables.d.ts +6 -0
  47. package/dist/security/command-trusted-executables.d.ts.map +1 -0
  48. package/dist/security/command-trusted-executables.js +57 -0
  49. package/dist/security/command-trusted-executables.js.map +1 -0
  50. package/dist/tools/cron.d.ts +22 -15
  51. package/dist/tools/cron.d.ts.map +1 -1
  52. package/dist/tools/cron.js +40 -20
  53. package/dist/tools/cron.js.map +1 -1
  54. package/dist/types.d.ts +5 -0
  55. package/dist/types.d.ts.map +1 -1
  56. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { Skill } from "../skills/skills.js";
2
+ import type { AgentProgressEvent } from "../types.js";
3
+ type ToolExecutionStartEvent = {
4
+ toolName: string;
5
+ args?: unknown;
6
+ };
7
+ type ToolExecutionEndEvent = {
8
+ toolName: string;
9
+ isError: boolean;
10
+ };
11
+ type SkillUsageReporter = (event: Extract<AgentProgressEvent, {
12
+ type: "skill_used";
13
+ }>) => Promise<void>;
14
+ export declare class SkillUsageTracker {
15
+ private readonly params;
16
+ private readonly skillLocations;
17
+ private readonly reportedSkills;
18
+ private readonly pendingReadFilePaths;
19
+ constructor(params: {
20
+ workspaceDir: string;
21
+ sessionId: string;
22
+ skills: Skill[];
23
+ report: SkillUsageReporter;
24
+ });
25
+ onToolExecutionStart(event: ToolExecutionStartEvent): void;
26
+ onToolExecutionEnd(event: ToolExecutionEndEvent): Promise<void>;
27
+ }
28
+ export {};
29
+ //# sourceMappingURL=skill-usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-usage.d.ts","sourceRoot":"","sources":["../../src/runner/skill-usage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,kBAAkB,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,kBAAkB,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AA2BxG,qBAAa,iBAAiB;IAM1B,OAAO,CAAC,QAAQ,CAAC,MAAM;IALzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IACrD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAgB;gBAGlC,MAAM,EAAE;QACvB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,MAAM,EAAE,kBAAkB,CAAC;KAC5B;IAOH,oBAAoB,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI;IAgBpD,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAqBtE"}
@@ -0,0 +1,65 @@
1
+ import path from "node:path";
2
+ function resolveToolPath(requestedPath, workspaceDir) {
3
+ return path.isAbsolute(requestedPath)
4
+ ? path.normalize(requestedPath)
5
+ : path.normalize(path.join(workspaceDir, requestedPath));
6
+ }
7
+ function inferSkillNameFromPath(resolvedPath) {
8
+ const normalized = resolvedPath.replace(/\\/g, "/");
9
+ if (!normalized.endsWith("/SKILL.md")) {
10
+ return undefined;
11
+ }
12
+ const marker = "/.pingclaw/skills/";
13
+ const markerIndex = normalized.lastIndexOf(marker);
14
+ if (markerIndex === -1) {
15
+ return undefined;
16
+ }
17
+ const skillPath = normalized.slice(markerIndex + marker.length, normalized.length - "/SKILL.md".length);
18
+ if (!skillPath || skillPath.includes("/")) {
19
+ return undefined;
20
+ }
21
+ return skillPath;
22
+ }
23
+ export class SkillUsageTracker {
24
+ params;
25
+ skillLocations;
26
+ reportedSkills = new Set();
27
+ pendingReadFilePaths = [];
28
+ constructor(params) {
29
+ this.params = params;
30
+ this.skillLocations = new Map(params.skills.map((skill) => [path.normalize(skill.location), skill.name]));
31
+ }
32
+ onToolExecutionStart(event) {
33
+ if (event.toolName !== "read_file") {
34
+ return;
35
+ }
36
+ if (!event.args || typeof event.args !== "object") {
37
+ return;
38
+ }
39
+ const requestedPath = event.args.path;
40
+ if (typeof requestedPath !== "string") {
41
+ return;
42
+ }
43
+ this.pendingReadFilePaths.push(resolveToolPath(requestedPath, this.params.workspaceDir));
44
+ }
45
+ async onToolExecutionEnd(event) {
46
+ if (event.toolName !== "read_file") {
47
+ return;
48
+ }
49
+ const resolvedPath = this.pendingReadFilePaths.pop();
50
+ const skillName = resolvedPath
51
+ ? (this.skillLocations.get(resolvedPath) ?? inferSkillNameFromPath(resolvedPath))
52
+ : undefined;
53
+ if (!skillName || event.isError || this.reportedSkills.has(skillName)) {
54
+ return;
55
+ }
56
+ this.reportedSkills.add(skillName);
57
+ await this.params.report({
58
+ type: "skill_used",
59
+ skillName,
60
+ agent: "aimax:main",
61
+ taskId: `aimax[${this.params.sessionId}]`,
62
+ });
63
+ }
64
+ }
65
+ //# sourceMappingURL=skill-usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-usage.js","sourceRoot":"","sources":["../../src/runner/skill-usage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { CommandDangerousRulesPolicy, ParsedCommandSegment } from "./command-policy-types.js";
2
+ export declare function matchDangerousExecutable(segment: ParsedCommandSegment, policy: CommandDangerousRulesPolicy): string | null;
3
+ export declare function matchDangerousShellPattern(command: string, policy: CommandDangerousRulesPolicy): string | null;
4
+ //# sourceMappingURL=command-dangerous-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-dangerous-rules.d.ts","sourceRoot":"","sources":["../../src/security/command-dangerous-rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAUnG,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,2BAA2B,GAClC,MAAM,GAAG,IAAI,CAMf;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,2BAA2B,GAClC,MAAM,GAAG,IAAI,CAUf"}
@@ -0,0 +1,26 @@
1
+ function normalizeExecutable(executable) {
2
+ if (!executable) {
3
+ return "";
4
+ }
5
+ const parts = executable.split(/[\\/]/);
6
+ return (parts[parts.length - 1] ?? executable).toLowerCase();
7
+ }
8
+ export function matchDangerousExecutable(segment, policy) {
9
+ const executable = normalizeExecutable(segment.executable);
10
+ if (!executable) {
11
+ return null;
12
+ }
13
+ return policy.denyExecutables.find((entry) => entry.toLowerCase() === executable) ?? null;
14
+ }
15
+ export function matchDangerousShellPattern(command, policy) {
16
+ const normalized = command.replace(/\s+/g, " ").toLowerCase();
17
+ for (const pattern of policy.denyShellPatterns) {
18
+ const compact = pattern.replace(/\s+/g, "").toLowerCase();
19
+ const folded = normalized.replace(/\s+/g, "");
20
+ if (folded.includes(compact)) {
21
+ return pattern;
22
+ }
23
+ }
24
+ return null;
25
+ }
26
+ //# sourceMappingURL=command-dangerous-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-dangerous-rules.js","sourceRoot":"","sources":["../../src/security/command-dangerous-rules.ts"],"names":[],"mappings":"AAEA,SAAS,mBAAmB,CAAC,UAAyB;IACpD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAA6B,EAC7B,MAAmC;IAEnC,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,IAAI,IAAI,CAAC;AAC5F,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,OAAe,EACf,MAAmC;IAEnC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9D,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ParsedCommand } from "./command-policy-types.js";
2
+ export declare function parseCommand(command: string): ParsedCommand | null;
3
+ //# sourceMappingURL=command-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-parser.d.ts","sourceRoot":"","sources":["../../src/security/command-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAwB,MAAM,2BAA2B,CAAC;AAqMrF,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAiBlE"}
@@ -0,0 +1,191 @@
1
+ function hasUnsupportedShellSyntax(command) {
2
+ return (command.includes("$(") ||
3
+ command.includes("`") ||
4
+ command.includes("<<") ||
5
+ command.includes("<(") ||
6
+ command.includes(">("));
7
+ }
8
+ function splitTopLevel(command) {
9
+ const segments = [];
10
+ let current = "";
11
+ let quote = null;
12
+ let escaped = false;
13
+ for (let index = 0; index < command.length; index += 1) {
14
+ const char = command[index];
15
+ const next = command[index + 1];
16
+ if (escaped) {
17
+ current += char;
18
+ escaped = false;
19
+ continue;
20
+ }
21
+ if (char === "\\") {
22
+ current += char;
23
+ escaped = true;
24
+ continue;
25
+ }
26
+ if (quote) {
27
+ current += char;
28
+ if (char === quote) {
29
+ quote = null;
30
+ }
31
+ continue;
32
+ }
33
+ if (char === "'" || char === '"') {
34
+ quote = char;
35
+ current += char;
36
+ continue;
37
+ }
38
+ if (char === "|" && next === "|") {
39
+ segments.push(current.trim());
40
+ current = "";
41
+ index += 1;
42
+ continue;
43
+ }
44
+ if (char === "&" && next === "&") {
45
+ segments.push(current.trim());
46
+ current = "";
47
+ index += 1;
48
+ continue;
49
+ }
50
+ if (char === ";" || char === "|") {
51
+ segments.push(current.trim());
52
+ current = "";
53
+ continue;
54
+ }
55
+ current += char;
56
+ }
57
+ if (quote || escaped) {
58
+ return null;
59
+ }
60
+ if (current.trim().length > 0) {
61
+ segments.push(current.trim());
62
+ }
63
+ return segments.filter((segment) => segment.length > 0);
64
+ }
65
+ function tokenize(segment) {
66
+ const tokens = [];
67
+ let current = "";
68
+ let quote = null;
69
+ let escaped = false;
70
+ for (let index = 0; index < segment.length; index += 1) {
71
+ const char = segment[index];
72
+ if (escaped) {
73
+ current += char;
74
+ escaped = false;
75
+ continue;
76
+ }
77
+ if (char === "\\") {
78
+ escaped = true;
79
+ continue;
80
+ }
81
+ if (quote) {
82
+ if (char === quote) {
83
+ quote = null;
84
+ }
85
+ else {
86
+ current += char;
87
+ }
88
+ continue;
89
+ }
90
+ if (char === "'" || char === '"') {
91
+ quote = char;
92
+ continue;
93
+ }
94
+ if (/\s/.test(char)) {
95
+ if (current.length > 0) {
96
+ tokens.push(current);
97
+ current = "";
98
+ }
99
+ continue;
100
+ }
101
+ if (char === ">" || char === "<") {
102
+ if (current.length > 0) {
103
+ tokens.push(current);
104
+ current = "";
105
+ }
106
+ const next = segment[index + 1];
107
+ if ((char === ">" || char === "<") && next === char) {
108
+ tokens.push(char + next);
109
+ index += 1;
110
+ }
111
+ else {
112
+ tokens.push(char);
113
+ }
114
+ continue;
115
+ }
116
+ if (char === "2" && segment[index + 1] === ">") {
117
+ if (current.length > 0) {
118
+ tokens.push(current);
119
+ current = "";
120
+ }
121
+ tokens.push("2>");
122
+ index += 1;
123
+ continue;
124
+ }
125
+ current += char;
126
+ }
127
+ if (quote || escaped) {
128
+ return null;
129
+ }
130
+ if (current.length > 0) {
131
+ tokens.push(current);
132
+ }
133
+ return tokens;
134
+ }
135
+ function unwrapEnv(tokens) {
136
+ if (tokens[0] !== "env") {
137
+ return tokens;
138
+ }
139
+ let index = 1;
140
+ while (index < tokens.length && /^[A-Za-z_][A-Za-z0-9_]*=/.test(tokens[index])) {
141
+ index += 1;
142
+ }
143
+ return tokens.slice(index);
144
+ }
145
+ function buildSegment(raw) {
146
+ const tokens = tokenize(raw);
147
+ if (!tokens || tokens.length === 0) {
148
+ return null;
149
+ }
150
+ const redirections = [];
151
+ const argv = [];
152
+ for (let index = 0; index < tokens.length; index += 1) {
153
+ const token = tokens[index];
154
+ if (token === ">" || token === ">>" || token === "<" || token === "2>") {
155
+ const target = tokens[index + 1];
156
+ if (!target) {
157
+ return null;
158
+ }
159
+ redirections.push({ operator: token, target });
160
+ index += 1;
161
+ continue;
162
+ }
163
+ argv.push(token);
164
+ }
165
+ const unwrapped = unwrapEnv(argv);
166
+ return {
167
+ raw,
168
+ argv,
169
+ executable: unwrapped[0] ?? null,
170
+ redirections,
171
+ };
172
+ }
173
+ export function parseCommand(command) {
174
+ if (!command.trim() || hasUnsupportedShellSyntax(command)) {
175
+ return null;
176
+ }
177
+ const rawSegments = splitTopLevel(command);
178
+ if (!rawSegments || rawSegments.length === 0) {
179
+ return null;
180
+ }
181
+ const segments = [];
182
+ for (const raw of rawSegments) {
183
+ const segment = buildSegment(raw);
184
+ if (!segment) {
185
+ return null;
186
+ }
187
+ segments.push(segment);
188
+ }
189
+ return { segments };
190
+ }
191
+ //# sourceMappingURL=command-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-parser.js","sourceRoot":"","sources":["../../src/security/command-parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { CommandPathPolicy, ParsedCommandSegment } from "./command-policy-types.js";
2
+ import type { CommandAllowlistPolicy } from "./command-policy-types.js";
3
+ export declare function validateCommandPaths(params: {
4
+ cwd: string;
5
+ allowedRoot: string;
6
+ pathPolicy: CommandPathPolicy;
7
+ segment: ParsedCommandSegment;
8
+ allowlist: CommandAllowlistPolicy;
9
+ }): string | null;
10
+ //# sourceMappingURL=command-path-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-path-guard.d.ts","sourceRoot":"","sources":["../../src/security/command-path-guard.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEzF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAiGxE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE,oBAAoB,CAAC;IAC9B,SAAS,EAAE,sBAAsB,CAAC;CACnC,GAAG,MAAM,GAAG,IAAI,CA0ChB"}