thoth-agents 0.10.0 → 0.12.0
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 +5 -3
- package/dist/agents/agent-config.d.ts +13 -0
- package/dist/agents/index.d.ts +1 -1
- package/dist/agents/orchestrator.d.ts +1 -1
- package/dist/{chunk-VHQMTZ5O.js → chunk-7F33WUSD.js} +1 -1
- package/dist/{chunk-RWQPMWEM.js → chunk-JLU3FSBT.js} +17 -2
- package/dist/chunk-MIDGZE34.js +107 -0
- package/dist/{chunk-RVQ6IIBR.js → chunk-NY2IPJ7V.js} +361 -118
- package/dist/{chunk-RN2ERZLZ.js → chunk-QOA2AETX.js} +2 -228
- package/dist/{chunk-6NZTNWI4.js → chunk-SEF6PFM6.js} +504 -211
- package/dist/cli/config-io.d.ts +2 -2
- package/dist/cli/index.js +92 -39
- package/dist/cli/install.d.ts +1 -0
- package/dist/cli/opencode-skill-consent.d.ts +5 -0
- package/dist/cli/operations/opencode.d.ts +2 -1
- package/dist/cli/operations/types.d.ts +1 -0
- package/dist/cli/owned-skills.d.ts +16 -0
- package/dist/cli/paths.d.ts +1 -1
- package/dist/cli/providers.d.ts +1 -1
- package/dist/cli/system.d.ts +3 -1
- package/dist/cli/thoth-mem-install.d.ts +10 -10
- package/dist/cli/tui/index.js +53 -5
- package/dist/cli/tui/operations.d.ts +2 -0
- package/dist/cli/types.d.ts +2 -4
- package/dist/config/loader.d.ts +1 -1
- package/dist/config/schema.d.ts +0 -31
- package/dist/harness/adapters/opencode.d.ts +1 -1
- package/dist/harness/core/agent-pack.d.ts +1 -0
- package/dist/harness/core/sdd.d.ts +6 -6
- package/dist/hooks/delegate-task-retry/hook.d.ts +8 -8
- package/dist/hooks/foreground-fallback/index.d.ts +14 -69
- package/dist/hooks/index.d.ts +0 -2
- package/dist/hooks/json-error-recovery/hook.d.ts +2 -15
- package/dist/hooks/oracle-gate-verdict/hook.d.ts +4 -11
- package/dist/index.d.ts +7 -4
- package/dist/index.js +822 -1421
- package/dist/opencode/agents.d.ts +3 -0
- package/dist/opencode/command.d.ts +3 -0
- package/dist/opencode/context.d.ts +20 -0
- package/dist/opencode/delegation-hooks.d.ts +3 -0
- package/dist/opencode/mcp.d.ts +3 -0
- package/dist/opencode/permission-rules.d.ts +9 -0
- package/dist/opencode/permissions.d.ts +3 -0
- package/dist/opencode/session-hooks.d.ts +3 -0
- package/dist/opencode/session-state.d.ts +39 -0
- package/dist/opencode/skills.d.ts +3 -0
- package/dist/opencode/tools.d.ts +3 -0
- package/dist/pi.js +3 -3
- package/dist/tools/ast-grep/cli.d.ts +1 -0
- package/dist/tools/ast-grep/index.d.ts +108 -2
- package/dist/tools/ast-grep/tools.d.ts +107 -3
- package/dist/tools/define-tool.d.ts +23 -0
- package/dist/tools/lsp/tools.d.ts +97 -5
- package/dist/utils/index.d.ts +0 -1
- package/package.json +14 -3
- package/pi/.thoth-agents-assets.json +2 -2
- package/pi/agents/thoth-designer.md +1 -1
- package/pi/agents/thoth-worker.md +1 -1
- package/plugin/.claude-plugin/.thoth-agents-plugin-assets.json +3 -3
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/.codex-plugin/.thoth-agents-plugin-assets.json +3 -3
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/agents/designer.md +1 -1
- package/plugin/agents/orchestrator.md +32 -32
- package/plugin/agents/worker.md +1 -1
- package/plugin/codex-hooks/payloads/designer.md +1 -1
- package/plugin/codex-hooks/payloads/root.md +32 -32
- package/plugin/codex-hooks/payloads/worker.md +1 -1
- package/plugin/skills/plan-reviewer/SKILL.md +5 -5
- package/plugin/skills/thoth-sdd/SKILL.md +33 -9
- package/plugin/skills/thoth-sdd/references/phases/checklist.md +1 -1
- package/plugin/skills/thoth-sdd/references/phases/clarify.md +1 -1
- package/plugin/skills/thoth-sdd/references/phases/converge.md +8 -1
- package/plugin/skills/thoth-sdd/references/phases/implement.md +5 -1
- package/plugin/skills/thoth-sdd/references/phases/plan.md +1 -1
- package/plugin/skills/thoth-sdd/references/phases/specify.md +1 -1
- package/plugin/skills/thoth-sdd/references/phases/tasks.md +1 -1
- package/plugin/skills/thoth-sdd/references/phases/verify.md +10 -3
- package/plugin/skills/thoth-sdd/scripts/validate-result.mjs +28 -2
- package/plugin/skills/thoth-sdd/templates/change.md +2 -1
- package/skills/plan-reviewer/SKILL.md +5 -5
- package/skills/thoth-sdd/SKILL.md +33 -9
- package/skills/thoth-sdd/references/phases/checklist.md +1 -1
- package/skills/thoth-sdd/references/phases/clarify.md +1 -1
- package/skills/thoth-sdd/references/phases/converge.md +8 -1
- package/skills/thoth-sdd/references/phases/implement.md +5 -1
- package/skills/thoth-sdd/references/phases/plan.md +1 -1
- package/skills/thoth-sdd/references/phases/specify.md +1 -1
- package/skills/thoth-sdd/references/phases/tasks.md +1 -1
- package/skills/thoth-sdd/references/phases/verify.md +10 -3
- package/skills/thoth-sdd/scripts/validate-result.mjs +28 -2
- package/skills/thoth-sdd/templates/change.md +2 -1
- package/thoth-agents.schema.json +0 -26
- package/dist/chunk-62L3ORXN.js +0 -30
- package/dist/delegation/project-id.d.ts +0 -10
- package/dist/hooks/auto-update-checker/checker.d.ts +0 -23
- package/dist/hooks/auto-update-checker/constants.d.ts +0 -11
- package/dist/hooks/auto-update-checker/index.d.ts +0 -17
- package/dist/hooks/auto-update-checker/types.d.ts +0 -22
- package/dist/utils/tmux-session-manager.d.ts +0 -63
- package/dist/utils/tmux.d.ts +0 -32
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Plugin } from '@opencode/plugin';
|
|
2
|
+
import { type AgentDefinition } from '../agents';
|
|
3
|
+
import { type PluginConfig } from '../config';
|
|
4
|
+
import { renderOpenCodeAgentConfigs } from '../harness/adapters/opencode';
|
|
5
|
+
type ModelEntry = {
|
|
6
|
+
id: string;
|
|
7
|
+
variant?: string;
|
|
8
|
+
};
|
|
9
|
+
export interface OpenCodeDependencies {
|
|
10
|
+
directory: string;
|
|
11
|
+
packageRoot: string;
|
|
12
|
+
config: PluginConfig;
|
|
13
|
+
agentDefs: AgentDefinition[];
|
|
14
|
+
agents: ReturnType<typeof renderOpenCodeAgentConfigs>;
|
|
15
|
+
modelArrayMap: Record<string, ModelEntry[]>;
|
|
16
|
+
effectiveModelArrays: Record<string, ModelEntry[]>;
|
|
17
|
+
runtimeChains: Record<string, string[]>;
|
|
18
|
+
}
|
|
19
|
+
export declare function loadOpenCodeDependencies(ctx: Plugin.Context): OpenCodeDependencies;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AgentDefinition } from '../agents';
|
|
2
|
+
type Effect = 'allow' | 'deny' | 'ask';
|
|
3
|
+
export interface PermissionRule {
|
|
4
|
+
action: string;
|
|
5
|
+
resource: string;
|
|
6
|
+
effect: Effect;
|
|
7
|
+
}
|
|
8
|
+
export declare function translatePermissionRules(permission: AgentDefinition['config']['permission']): PermissionRule[];
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Plugin } from '@opencode/plugin';
|
|
2
|
+
type SessionID = Parameters<Plugin.Context['session']['instructions']['entry']['put']>[0]['sessionID'];
|
|
3
|
+
export type StateEvent = {
|
|
4
|
+
type: 'session.created';
|
|
5
|
+
data: {
|
|
6
|
+
sessionID: SessionID;
|
|
7
|
+
parentID?: SessionID;
|
|
8
|
+
};
|
|
9
|
+
} | {
|
|
10
|
+
type: 'session.status';
|
|
11
|
+
data: {
|
|
12
|
+
sessionID: SessionID;
|
|
13
|
+
status: {
|
|
14
|
+
type: 'idle' | 'busy' | 'retry';
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
} | {
|
|
18
|
+
type: 'session.deleted';
|
|
19
|
+
data: {
|
|
20
|
+
sessionID: SessionID;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
/** Read-only record inventory plus live children. All updates are serialized. */
|
|
24
|
+
export declare class SessionState {
|
|
25
|
+
private readonly directory;
|
|
26
|
+
private readonly instructions;
|
|
27
|
+
private readonly parents;
|
|
28
|
+
private readonly running;
|
|
29
|
+
private readonly published;
|
|
30
|
+
private readonly records;
|
|
31
|
+
private queue;
|
|
32
|
+
constructor(directory: string, instructions: Plugin.Context['session']['instructions']);
|
|
33
|
+
private serialize;
|
|
34
|
+
refresh(sessionID: SessionID): Promise<string>;
|
|
35
|
+
event(event: StateEvent): Promise<void>;
|
|
36
|
+
private inventory;
|
|
37
|
+
private publish;
|
|
38
|
+
}
|
|
39
|
+
export {};
|
package/dist/pi.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
2
|
formatGateVerdict,
|
|
3
3
|
summarizeGateResult
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-JLU3FSBT.js";
|
|
5
5
|
import {
|
|
6
6
|
PI_ROOT_END,
|
|
7
7
|
PI_ROOT_START,
|
|
8
8
|
createPiToolsPanelAdapter,
|
|
9
9
|
renderPiRootInstructions,
|
|
10
10
|
syncPiSpecialists
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-7F33WUSD.js";
|
|
12
12
|
import {
|
|
13
13
|
findPackageRoot
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-NY2IPJ7V.js";
|
|
15
15
|
|
|
16
16
|
// src/pi.ts
|
|
17
17
|
import { homedir } from "os";
|
|
@@ -1,6 +1,112 @@
|
|
|
1
|
-
import type { ToolDefinition } from '@opencode-ai/plugin';
|
|
2
1
|
import { ast_grep_replace, ast_grep_search } from './tools';
|
|
3
|
-
export declare const builtinTools:
|
|
2
|
+
export declare const builtinTools: {
|
|
3
|
+
ast_grep_search: {
|
|
4
|
+
name: string;
|
|
5
|
+
description: string;
|
|
6
|
+
input: import("zod").ZodObject<{
|
|
7
|
+
pattern: import("zod").ZodString;
|
|
8
|
+
lang: import("zod").ZodEnum<{
|
|
9
|
+
bash: "bash";
|
|
10
|
+
c: "c";
|
|
11
|
+
cpp: "cpp";
|
|
12
|
+
csharp: "csharp";
|
|
13
|
+
css: "css";
|
|
14
|
+
elixir: "elixir";
|
|
15
|
+
go: "go";
|
|
16
|
+
haskell: "haskell";
|
|
17
|
+
html: "html";
|
|
18
|
+
java: "java";
|
|
19
|
+
javascript: "javascript";
|
|
20
|
+
json: "json";
|
|
21
|
+
kotlin: "kotlin";
|
|
22
|
+
lua: "lua";
|
|
23
|
+
nix: "nix";
|
|
24
|
+
php: "php";
|
|
25
|
+
python: "python";
|
|
26
|
+
ruby: "ruby";
|
|
27
|
+
rust: "rust";
|
|
28
|
+
scala: "scala";
|
|
29
|
+
solidity: "solidity";
|
|
30
|
+
swift: "swift";
|
|
31
|
+
typescript: "typescript";
|
|
32
|
+
tsx: "tsx";
|
|
33
|
+
yaml: "yaml";
|
|
34
|
+
}>;
|
|
35
|
+
paths: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
36
|
+
globs: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
37
|
+
context: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
38
|
+
}, import("zod/v4/core").$strip>;
|
|
39
|
+
execute(input: {
|
|
40
|
+
pattern: string;
|
|
41
|
+
lang: "bash" | "c" | "cpp" | "csharp" | "css" | "elixir" | "go" | "haskell" | "html" | "java" | "javascript" | "json" | "kotlin" | "lua" | "nix" | "php" | "python" | "ruby" | "rust" | "scala" | "solidity" | "swift" | "typescript" | "tsx" | "yaml";
|
|
42
|
+
paths?: string[] | undefined;
|
|
43
|
+
globs?: string[] | undefined;
|
|
44
|
+
context?: number | undefined;
|
|
45
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
46
|
+
content: string;
|
|
47
|
+
metadata: {
|
|
48
|
+
output: string;
|
|
49
|
+
};
|
|
50
|
+
} | {
|
|
51
|
+
content: string;
|
|
52
|
+
metadata?: undefined;
|
|
53
|
+
}>;
|
|
54
|
+
};
|
|
55
|
+
ast_grep_replace: {
|
|
56
|
+
name: string;
|
|
57
|
+
description: string;
|
|
58
|
+
input: import("zod").ZodObject<{
|
|
59
|
+
pattern: import("zod").ZodString;
|
|
60
|
+
rewrite: import("zod").ZodString;
|
|
61
|
+
lang: import("zod").ZodEnum<{
|
|
62
|
+
bash: "bash";
|
|
63
|
+
c: "c";
|
|
64
|
+
cpp: "cpp";
|
|
65
|
+
csharp: "csharp";
|
|
66
|
+
css: "css";
|
|
67
|
+
elixir: "elixir";
|
|
68
|
+
go: "go";
|
|
69
|
+
haskell: "haskell";
|
|
70
|
+
html: "html";
|
|
71
|
+
java: "java";
|
|
72
|
+
javascript: "javascript";
|
|
73
|
+
json: "json";
|
|
74
|
+
kotlin: "kotlin";
|
|
75
|
+
lua: "lua";
|
|
76
|
+
nix: "nix";
|
|
77
|
+
php: "php";
|
|
78
|
+
python: "python";
|
|
79
|
+
ruby: "ruby";
|
|
80
|
+
rust: "rust";
|
|
81
|
+
scala: "scala";
|
|
82
|
+
solidity: "solidity";
|
|
83
|
+
swift: "swift";
|
|
84
|
+
typescript: "typescript";
|
|
85
|
+
tsx: "tsx";
|
|
86
|
+
yaml: "yaml";
|
|
87
|
+
}>;
|
|
88
|
+
paths: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
89
|
+
globs: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
90
|
+
dryRun: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
91
|
+
}, import("zod/v4/core").$strip>;
|
|
92
|
+
execute(input: {
|
|
93
|
+
pattern: string;
|
|
94
|
+
rewrite: string;
|
|
95
|
+
lang: "bash" | "c" | "cpp" | "csharp" | "css" | "elixir" | "go" | "haskell" | "html" | "java" | "javascript" | "json" | "kotlin" | "lua" | "nix" | "php" | "python" | "ruby" | "rust" | "scala" | "solidity" | "swift" | "typescript" | "tsx" | "yaml";
|
|
96
|
+
paths?: string[] | undefined;
|
|
97
|
+
globs?: string[] | undefined;
|
|
98
|
+
dryRun?: boolean | undefined;
|
|
99
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
100
|
+
content: string;
|
|
101
|
+
metadata: {
|
|
102
|
+
output: string;
|
|
103
|
+
};
|
|
104
|
+
} | {
|
|
105
|
+
content: string;
|
|
106
|
+
metadata?: undefined;
|
|
107
|
+
}>;
|
|
108
|
+
};
|
|
109
|
+
};
|
|
4
110
|
export { ast_grep_search, ast_grep_replace };
|
|
5
111
|
export { ensureCliAvailable, getAstGrepPath, isCliAvailable, startBackgroundInit, } from './cli';
|
|
6
112
|
export type { EnvironmentCheckResult } from './constants';
|
|
@@ -1,3 +1,107 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const ast_grep_search:
|
|
3
|
-
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const ast_grep_search: {
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
input: z.ZodObject<{
|
|
6
|
+
pattern: z.ZodString;
|
|
7
|
+
lang: z.ZodEnum<{
|
|
8
|
+
bash: "bash";
|
|
9
|
+
c: "c";
|
|
10
|
+
cpp: "cpp";
|
|
11
|
+
csharp: "csharp";
|
|
12
|
+
css: "css";
|
|
13
|
+
elixir: "elixir";
|
|
14
|
+
go: "go";
|
|
15
|
+
haskell: "haskell";
|
|
16
|
+
html: "html";
|
|
17
|
+
java: "java";
|
|
18
|
+
javascript: "javascript";
|
|
19
|
+
json: "json";
|
|
20
|
+
kotlin: "kotlin";
|
|
21
|
+
lua: "lua";
|
|
22
|
+
nix: "nix";
|
|
23
|
+
php: "php";
|
|
24
|
+
python: "python";
|
|
25
|
+
ruby: "ruby";
|
|
26
|
+
rust: "rust";
|
|
27
|
+
scala: "scala";
|
|
28
|
+
solidity: "solidity";
|
|
29
|
+
swift: "swift";
|
|
30
|
+
typescript: "typescript";
|
|
31
|
+
tsx: "tsx";
|
|
32
|
+
yaml: "yaml";
|
|
33
|
+
}>;
|
|
34
|
+
paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
35
|
+
globs: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
36
|
+
context: z.ZodOptional<z.ZodNumber>;
|
|
37
|
+
}, z.core.$strip>;
|
|
38
|
+
execute(input: {
|
|
39
|
+
pattern: string;
|
|
40
|
+
lang: "bash" | "c" | "cpp" | "csharp" | "css" | "elixir" | "go" | "haskell" | "html" | "java" | "javascript" | "json" | "kotlin" | "lua" | "nix" | "php" | "python" | "ruby" | "rust" | "scala" | "solidity" | "swift" | "typescript" | "tsx" | "yaml";
|
|
41
|
+
paths?: string[] | undefined;
|
|
42
|
+
globs?: string[] | undefined;
|
|
43
|
+
context?: number | undefined;
|
|
44
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
45
|
+
content: string;
|
|
46
|
+
metadata: {
|
|
47
|
+
output: string;
|
|
48
|
+
};
|
|
49
|
+
} | {
|
|
50
|
+
content: string;
|
|
51
|
+
metadata?: undefined;
|
|
52
|
+
}>;
|
|
53
|
+
};
|
|
54
|
+
export declare const ast_grep_replace: {
|
|
55
|
+
name: string;
|
|
56
|
+
description: string;
|
|
57
|
+
input: z.ZodObject<{
|
|
58
|
+
pattern: z.ZodString;
|
|
59
|
+
rewrite: z.ZodString;
|
|
60
|
+
lang: z.ZodEnum<{
|
|
61
|
+
bash: "bash";
|
|
62
|
+
c: "c";
|
|
63
|
+
cpp: "cpp";
|
|
64
|
+
csharp: "csharp";
|
|
65
|
+
css: "css";
|
|
66
|
+
elixir: "elixir";
|
|
67
|
+
go: "go";
|
|
68
|
+
haskell: "haskell";
|
|
69
|
+
html: "html";
|
|
70
|
+
java: "java";
|
|
71
|
+
javascript: "javascript";
|
|
72
|
+
json: "json";
|
|
73
|
+
kotlin: "kotlin";
|
|
74
|
+
lua: "lua";
|
|
75
|
+
nix: "nix";
|
|
76
|
+
php: "php";
|
|
77
|
+
python: "python";
|
|
78
|
+
ruby: "ruby";
|
|
79
|
+
rust: "rust";
|
|
80
|
+
scala: "scala";
|
|
81
|
+
solidity: "solidity";
|
|
82
|
+
swift: "swift";
|
|
83
|
+
typescript: "typescript";
|
|
84
|
+
tsx: "tsx";
|
|
85
|
+
yaml: "yaml";
|
|
86
|
+
}>;
|
|
87
|
+
paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
88
|
+
globs: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
89
|
+
dryRun: z.ZodOptional<z.ZodBoolean>;
|
|
90
|
+
}, z.core.$strip>;
|
|
91
|
+
execute(input: {
|
|
92
|
+
pattern: string;
|
|
93
|
+
rewrite: string;
|
|
94
|
+
lang: "bash" | "c" | "cpp" | "csharp" | "css" | "elixir" | "go" | "haskell" | "html" | "java" | "javascript" | "json" | "kotlin" | "lua" | "nix" | "php" | "python" | "ruby" | "rust" | "scala" | "solidity" | "swift" | "typescript" | "tsx" | "yaml";
|
|
95
|
+
paths?: string[] | undefined;
|
|
96
|
+
globs?: string[] | undefined;
|
|
97
|
+
dryRun?: boolean | undefined;
|
|
98
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
99
|
+
content: string;
|
|
100
|
+
metadata: {
|
|
101
|
+
output: string;
|
|
102
|
+
};
|
|
103
|
+
} | {
|
|
104
|
+
content: string;
|
|
105
|
+
metadata?: undefined;
|
|
106
|
+
}>;
|
|
107
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ToolContext } from '@opencode/plugin/promise/tool';
|
|
2
|
+
import type { z } from 'zod';
|
|
3
|
+
/** Adapt the existing text-producing tools to the host's v2 result contract. */
|
|
4
|
+
export declare function defineTool<Input extends z.ZodType>(definition: {
|
|
5
|
+
name: string;
|
|
6
|
+
description: string;
|
|
7
|
+
input: Input;
|
|
8
|
+
showOutput?: boolean;
|
|
9
|
+
execute: (input: z.infer<Input>, context: ToolContext) => Promise<string>;
|
|
10
|
+
}): {
|
|
11
|
+
name: string;
|
|
12
|
+
description: string;
|
|
13
|
+
input: Input;
|
|
14
|
+
execute(input: z.infer<Input>, context: ToolContext): Promise<{
|
|
15
|
+
content: string;
|
|
16
|
+
metadata: {
|
|
17
|
+
output: string;
|
|
18
|
+
};
|
|
19
|
+
} | {
|
|
20
|
+
content: string;
|
|
21
|
+
metadata?: undefined;
|
|
22
|
+
}>;
|
|
23
|
+
};
|
|
@@ -1,5 +1,97 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const lsp_goto_definition:
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const lsp_goto_definition: {
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
input: z.ZodObject<{
|
|
6
|
+
filePath: z.ZodString;
|
|
7
|
+
line: z.ZodNumber;
|
|
8
|
+
character: z.ZodNumber;
|
|
9
|
+
}, z.core.$strip>;
|
|
10
|
+
execute(input: {
|
|
11
|
+
filePath: string;
|
|
12
|
+
line: number;
|
|
13
|
+
character: number;
|
|
14
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
15
|
+
content: string;
|
|
16
|
+
metadata: {
|
|
17
|
+
output: string;
|
|
18
|
+
};
|
|
19
|
+
} | {
|
|
20
|
+
content: string;
|
|
21
|
+
metadata?: undefined;
|
|
22
|
+
}>;
|
|
23
|
+
};
|
|
24
|
+
export declare const lsp_find_references: {
|
|
25
|
+
name: string;
|
|
26
|
+
description: string;
|
|
27
|
+
input: z.ZodObject<{
|
|
28
|
+
filePath: z.ZodString;
|
|
29
|
+
line: z.ZodNumber;
|
|
30
|
+
character: z.ZodNumber;
|
|
31
|
+
includeDeclaration: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
+
}, z.core.$strip>;
|
|
33
|
+
execute(input: {
|
|
34
|
+
filePath: string;
|
|
35
|
+
line: number;
|
|
36
|
+
character: number;
|
|
37
|
+
includeDeclaration?: boolean | undefined;
|
|
38
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
39
|
+
content: string;
|
|
40
|
+
metadata: {
|
|
41
|
+
output: string;
|
|
42
|
+
};
|
|
43
|
+
} | {
|
|
44
|
+
content: string;
|
|
45
|
+
metadata?: undefined;
|
|
46
|
+
}>;
|
|
47
|
+
};
|
|
48
|
+
export declare const lsp_diagnostics: {
|
|
49
|
+
name: string;
|
|
50
|
+
description: string;
|
|
51
|
+
input: z.ZodObject<{
|
|
52
|
+
filePath: z.ZodString;
|
|
53
|
+
severity: z.ZodOptional<z.ZodEnum<{
|
|
54
|
+
error: "error";
|
|
55
|
+
all: "all";
|
|
56
|
+
warning: "warning";
|
|
57
|
+
information: "information";
|
|
58
|
+
hint: "hint";
|
|
59
|
+
}>>;
|
|
60
|
+
}, z.core.$strip>;
|
|
61
|
+
execute(input: {
|
|
62
|
+
filePath: string;
|
|
63
|
+
severity?: "error" | "all" | "warning" | "information" | "hint" | undefined;
|
|
64
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
65
|
+
content: string;
|
|
66
|
+
metadata: {
|
|
67
|
+
output: string;
|
|
68
|
+
};
|
|
69
|
+
} | {
|
|
70
|
+
content: string;
|
|
71
|
+
metadata?: undefined;
|
|
72
|
+
}>;
|
|
73
|
+
};
|
|
74
|
+
export declare const lsp_rename: {
|
|
75
|
+
name: string;
|
|
76
|
+
description: string;
|
|
77
|
+
input: z.ZodObject<{
|
|
78
|
+
filePath: z.ZodString;
|
|
79
|
+
line: z.ZodNumber;
|
|
80
|
+
character: z.ZodNumber;
|
|
81
|
+
newName: z.ZodString;
|
|
82
|
+
}, z.core.$strip>;
|
|
83
|
+
execute(input: {
|
|
84
|
+
filePath: string;
|
|
85
|
+
line: number;
|
|
86
|
+
character: number;
|
|
87
|
+
newName: string;
|
|
88
|
+
}, context: import("@opencode/plugin/promise/tool").ToolContext): Promise<{
|
|
89
|
+
content: string;
|
|
90
|
+
metadata: {
|
|
91
|
+
output: string;
|
|
92
|
+
};
|
|
93
|
+
} | {
|
|
94
|
+
content: string;
|
|
95
|
+
metadata?: undefined;
|
|
96
|
+
}>;
|
|
97
|
+
};
|
package/dist/utils/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "thoth-agents",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "Adaptive multi-harness orchestration with six roles, runtime-autonomous AI-first execution routes, and external provider boundaries.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"default": "./dist/index.js"
|
|
11
|
+
},
|
|
12
|
+
"./package.json": "./package.json",
|
|
13
|
+
"./dist/*": "./dist/*",
|
|
14
|
+
"./skills/*": "./skills/*",
|
|
15
|
+
"./plugin/*": "./plugin/*",
|
|
16
|
+
"./pi/*": "./pi/*",
|
|
17
|
+
"./thoth-agents.schema.json": "./thoth-agents.schema.json"
|
|
18
|
+
},
|
|
7
19
|
"bin": {
|
|
8
20
|
"thoth-agents": "./dist/cli/index.js"
|
|
9
21
|
},
|
|
@@ -81,8 +93,6 @@
|
|
|
81
93
|
"dependencies": {
|
|
82
94
|
"@ast-grep/cli": "^0.40.0",
|
|
83
95
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
84
|
-
"@opencode-ai/plugin": "1.18.2",
|
|
85
|
-
"@opencode-ai/sdk": "1.18.2",
|
|
86
96
|
"hosted-git-info": "9.0.3",
|
|
87
97
|
"ink": "^7.0.3",
|
|
88
98
|
"react": "^19.2.6",
|
|
@@ -103,6 +113,7 @@
|
|
|
103
113
|
"@earendil-works/pi-ai": "1.5.0",
|
|
104
114
|
"@earendil-works/pi-coding-agent": "1.5.0",
|
|
105
115
|
"@earendil-works/pi-tui": "1.5.0",
|
|
116
|
+
"@opencode/plugin": "2.2.5",
|
|
106
117
|
"@types/hosted-git-info": "3.0.5",
|
|
107
118
|
"@types/node": "^22.19.19",
|
|
108
119
|
"@types/react": "^19.2.15",
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"agents/thoth-explorer.md": "961a1be9c1a387a582374e4ed23302a1eec228c80c9e8f8f70b48b822781eb8b",
|
|
6
6
|
"agents/thoth-librarian.md": "26eb9468c5fbf07ea8231c44831ba5aa8cba96081d0e432673ba6e42d3005544",
|
|
7
7
|
"agents/thoth-oracle.md": "49584f245a2ae1ba0fff56541215c4736393fa8cec3bcf58a4b3d737dc2b6c09",
|
|
8
|
-
"agents/thoth-designer.md": "
|
|
9
|
-
"agents/thoth-worker.md": "
|
|
8
|
+
"agents/thoth-designer.md": "976f11ae4facb030c0634321bf57f4489e1fa8ca05e9a20faa64d503788d2082",
|
|
9
|
+
"agents/thoth-worker.md": "8d2fc39de0780e52a42bc7b220635e5c806a606600933e860de285b6e68ac8b2"
|
|
10
10
|
}
|
|
11
11
|
}
|
|
@@ -34,7 +34,7 @@ Own user-facing implementation choices and visual quality for UI work.
|
|
|
34
34
|
</reasoning-discipline>
|
|
35
35
|
|
|
36
36
|
<rules>
|
|
37
|
-
- Edit only the assigned work-unit surface.
|
|
37
|
+
- Edit only the assigned work-unit surface. Never write .thoth/changes/ records; implementation starts only after authorization.
|
|
38
38
|
- Preserve unrelated working-tree changes and never use destructive Git cleanup.
|
|
39
39
|
- Use local judgment to complete the accepted outcome within the assigned boundaries.
|
|
40
40
|
- If a new independently acceptable outcome or material scope change appears, return bounded progress for root reassessment before expanding.
|
|
@@ -34,7 +34,7 @@ Handle bounded nonvisual implementation with full local context, including exact
|
|
|
34
34
|
</reasoning-discipline>
|
|
35
35
|
|
|
36
36
|
<rules>
|
|
37
|
-
- Edit only the assigned work-unit surface.
|
|
37
|
+
- Edit only the assigned work-unit surface. Never write .thoth/changes/ records; implementation starts only after authorization.
|
|
38
38
|
- Preserve unrelated working-tree changes and never use destructive Git cleanup.
|
|
39
39
|
- Use local judgment to complete the accepted outcome within the assigned boundaries.
|
|
40
40
|
- If a new independently acceptable outcome or material scope change appears, return bounded progress for root reassessment before expanding.
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
{
|
|
10
10
|
"path": "agents/designer.md",
|
|
11
11
|
"kind": "agent-config",
|
|
12
|
-
"sha256": "sha256:
|
|
12
|
+
"sha256": "sha256:697a333a32819d383cd9ab6875c9c29cd5bcf50da693c77394f671ae9fdcffdd"
|
|
13
13
|
},
|
|
14
14
|
{
|
|
15
15
|
"path": "agents/explorer.md",
|
|
@@ -29,12 +29,12 @@
|
|
|
29
29
|
{
|
|
30
30
|
"path": "agents/orchestrator.md",
|
|
31
31
|
"kind": "agent-config",
|
|
32
|
-
"sha256": "sha256:
|
|
32
|
+
"sha256": "sha256:959408cafbc598d68d644b8993a2f218fea8b82ba6c894d8dea836ab3105fe61"
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
35
|
"path": "agents/worker.md",
|
|
36
36
|
"kind": "agent-config",
|
|
37
|
-
"sha256": "sha256:
|
|
37
|
+
"sha256": "sha256:49f2756cd5cd6b72ccb20a9983b4d0d908796be4d4c8d591a8e40e503d7b6e4e"
|
|
38
38
|
},
|
|
39
39
|
{
|
|
40
40
|
"path": "claude-hooks/hooks.json",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"field": "hooks",
|
|
18
18
|
"path": ".codex-plugin/codex-hooks/payloads/designer.md",
|
|
19
19
|
"reference": "./codex-hooks/payloads/designer.md",
|
|
20
|
-
"sha256": "sha256:
|
|
20
|
+
"sha256": "sha256:56655c30d8f82d50ba6dc6ae3c66e1fe0e2e6a034af95a1d15e3da0f9fbe99af"
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
"field": "hooks",
|
|
@@ -41,13 +41,13 @@
|
|
|
41
41
|
"field": "hooks",
|
|
42
42
|
"path": ".codex-plugin/codex-hooks/payloads/root.md",
|
|
43
43
|
"reference": "./codex-hooks/payloads/root.md",
|
|
44
|
-
"sha256": "sha256:
|
|
44
|
+
"sha256": "sha256:723979f87838ce6adbff521feea40c55a91317136af88d8cb23a5b9267e1ccf3"
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
47
|
"field": "hooks",
|
|
48
48
|
"path": ".codex-plugin/codex-hooks/payloads/worker.md",
|
|
49
49
|
"reference": "./codex-hooks/payloads/worker.md",
|
|
50
|
-
"sha256": "sha256:
|
|
50
|
+
"sha256": "sha256:8f00c5ca5285d39ed61a49219a9129b616477242ad1af0fa42c836663e90f2d5"
|
|
51
51
|
},
|
|
52
52
|
{
|
|
53
53
|
"field": "mcpServers",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "thoth-agents",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "Bundled AI-first work skills and MCP configuration; the six-role global Codex layer requires thoth-agents CLI setup.",
|
|
5
5
|
"skills": "./skills/",
|
|
6
6
|
"mcpServers": "./codex.mcp.json",
|
|
@@ -32,7 +32,7 @@ Own user-facing implementation choices and visual quality for UI work.
|
|
|
32
32
|
</reasoning-discipline>
|
|
33
33
|
|
|
34
34
|
<rules>
|
|
35
|
-
- Edit only the assigned work-unit surface.
|
|
35
|
+
- Edit only the assigned work-unit surface. Never write .thoth/changes/ records; implementation starts only after authorization.
|
|
36
36
|
- Preserve unrelated working-tree changes and never use destructive Git cleanup.
|
|
37
37
|
- Use local judgment to complete the accepted outcome within the assigned boundaries.
|
|
38
38
|
- If a new independently acceptable outcome or material scope change appears, return bounded progress for root reassessment before expanding.
|