Files
whetstone_DSL/tools/claude/tools.json
2026-02-10 08:12:16 -07:00

165 lines
4.7 KiB
JSON

{
"version": "1.0",
"provider": "anthropic",
"tools": [
{
"name": "whetstone_get_ast",
"description": "Get the current AST (Abstract Syntax Tree) of the active buffer as JSON.",
"input_schema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"examples": [
{}
]
},
{
"name": "whetstone_mutate",
"description": "Apply a single mutation to the AST (setProperty, updateNode, deleteNode, insertNode).",
"input_schema": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": ["setProperty", "updateNode", "deleteNode", "insertNode"]
},
"nodeId": { "type": "string" },
"property": { "type": "string" },
"value": { "type": "string" },
"parentId": { "type": "string" },
"role": { "type": "string" },
"node": { "type": "object" }
},
"required": ["type"]
},
"examples": [
{ "type": "setProperty", "nodeId": "fn1", "property": "name", "value": "rename_me" }
]
},
{
"name": "whetstone_batch_mutate",
"description": "Apply multiple mutations atomically (all succeed or rollback).",
"input_schema": {
"type": "object",
"properties": {
"mutations": {
"type": "array",
"items": { "type": "object" }
}
},
"required": ["mutations"]
},
"examples": [
{ "mutations": [{ "type": "deleteNode", "nodeId": "n42" }] }
]
},
{
"name": "whetstone_get_scope",
"description": "Get all symbols in scope at a given AST node.",
"input_schema": {
"type": "object",
"properties": {
"nodeId": { "type": "string" }
},
"required": ["nodeId"]
},
"examples": [
{ "nodeId": "fn1" }
]
},
{
"name": "whetstone_get_call_hierarchy",
"description": "Get call hierarchy for a function node (callers and callees).",
"input_schema": {
"type": "object",
"properties": {
"functionId": { "type": "string" }
},
"required": ["functionId"]
},
"examples": [
{ "functionId": "fn1" }
]
},
{
"name": "whetstone_suggest_annotations",
"description": "Get memory annotation suggestions for a node or line/col location.",
"input_schema": {
"type": "object",
"properties": {
"nodeId": { "type": "string" },
"line": { "type": "integer" },
"col": { "type": "integer" }
}
},
"examples": [
{ "nodeId": "fn1" }
]
},
{
"name": "whetstone_apply_annotation",
"description": "Apply a memory annotation suggestion to the AST.",
"input_schema": {
"type": "object",
"properties": {
"nodeId": { "type": "string" },
"annotationType": { "type": "string" },
"strategy": { "type": "string" },
"reason": { "type": "string" },
"confidence": { "type": "number" }
},
"required": ["nodeId", "annotationType", "strategy"]
},
"examples": [
{ "nodeId": "fn1", "annotationType": "ReclaimAnnotation", "strategy": "Tracing" }
]
},
{
"name": "whetstone_generate_code",
"description": "Generate code from a natural language spec, optionally preferring imports.",
"input_schema": {
"type": "object",
"properties": {
"spec": { "type": "string" },
"preferImports": { "type": "boolean" }
},
"required": ["spec"]
},
"examples": [
{ "spec": "Create a function that sums a list of integers.", "preferImports": true }
]
},
{
"name": "whetstone_run_pipeline",
"description": "Run full pipeline: parse, infer annotations, validate, optimize, generate.",
"input_schema": {
"type": "object",
"properties": {
"source": { "type": "string" },
"sourceLanguage": { "type": "string" },
"targetLanguage": { "type": "string" }
},
"required": ["source", "sourceLanguage", "targetLanguage"]
},
"examples": [
{ "source": "def add(a,b): return a+b", "sourceLanguage": "python", "targetLanguage": "cpp" }
]
},
{
"name": "whetstone_project_language",
"description": "Project current AST to a different target language.",
"input_schema": {
"type": "object",
"properties": {
"targetLanguage": { "type": "string" }
},
"required": ["targetLanguage"]
},
"examples": [
{ "targetLanguage": "rust" }
]
}
]
}