Files
whetstone_DSL/tools/claude/tools.json
Bill 1f1234b28b Sprint 272: fitness-routed polyglot test projects — Phase 2 (steps 1888-1892)
Added PolyglotProjectSpec data model and three concrete 2-language test
project fixtures, all routing correctly via LanguageFitnessScorer.

New headers:
- PolyglotProjectSpec.h: PolyglotInterface, PolyglotSection, PolyglotProjectSpec,
  PolyglotFitnessRouter (explicit override + auto-routing via scorer)
- PolySortProject.h: sort-core → Rust, data-gen → Python
- PolyApiProject.h: http-server → Go, api-client → TypeScript
- PolyParseProject.h: lexer → C++, ast-transform → Haskell
- Sprint272IntegrationSummary.h

25/25 tests passing (steps 1888-1892). All new headers ≤ 600 lines.
tools/claude/tools.json: added whetstone_score_language_fitness (tool 91).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 14:17:33 -07:00

1245 lines
28 KiB
JSON

{
"version": "2.0",
"provider": "anthropic",
"tools": [
{
"name": "whetstone_add_skeleton_node",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_apply_annotation",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_apply_quick_fix",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_approve_item",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_architect_intake",
"description": "Parses markdown goals/constraints and extracts functional requirement bullets (including field lists) into normalized requirements.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_assign_task",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_batch_mutate",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_batch_query",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_close_file",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_complete_task",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_create_skeleton",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_create_workflow",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_execute_task",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_export_training_data",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_file_create",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_file_diff",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_file_read",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_file_write",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_generate_code",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_generate_examples",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_generate_taskitems",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_ast",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_ast_diff",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_ast_subtree",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_blockers",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_call_hierarchy",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_diagnostics",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_diagnostics_delta",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_environment",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_event_stream",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_lowering_hints",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_progress",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_project_diagnostics",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_project_model",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_quick_fixes",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_ready_tasks",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_recent_events",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_review_context",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_review_policy",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_review_queue",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_routing_explanation",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_scope",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_semantic_annotations",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_unannotated_nodes",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_work_item",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_get_workflow_state",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_index_workspace",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_infer_annotations",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_list_annotated_files",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_list_buffers",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_load_annotated_ast",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_mutate",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_onboard_workspace",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_open_file",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_orchestrate_advance",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_orchestrate_run_deterministic",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_orchestrate_step",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_project_language",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_queue_ready",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_redo",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_reject_item",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_reject_task",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_remove_semantic_annotation",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_rename_symbol",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_route_all_ready",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_route_task",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_run_pipeline",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_save_all_buffers",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_save_annotated_ast",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_save_buffer",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_save_workflow",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_search_project",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_set_active_buffer",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_set_environment",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_set_review_policy",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_set_semantic_annotation",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_set_workspace",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_submit_result",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_suggest_annotations",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_undo",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_validate_environment",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_workspace_list",
"description": "See Whetstone MCP docs.",
"input_schema": {
"type": "object",
"properties": {}
},
"examples": [
{}
]
},
{
"name": "whetstone_schema_to_cpp",
"description": "Generate a typed C++ header struct with nlohmann JSON serializers from a JSON Schema object. Returns header_code (ready to write to a .h file) and a cmake_interface_target snippet.",
"input_schema": {
"type": "object",
"properties": {
"schema": {
"type": "object",
"description": "JSON Schema with 'title' and 'properties'."
},
"header_name": {
"type": "string",
"description": "Output header filename, e.g. 'EnergyContext.h'."
},
"target_name": {
"type": "string",
"description": "CMake INTERFACE target name, e.g. energy_context_types."
}
},
"required": [
"schema",
"header_name",
"target_name"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_generate_dispatch_table",
"description": "Generate a C++ dispatch table header (makeDispatchTable()) from a list of job type specs. Each entry maps a job_type string to a C++ executor callable.",
"input_schema": {
"type": "object",
"properties": {
"entries": {
"type": "array",
"description": "Array of job dispatch entries.",
"items": {
"type": "object",
"properties": {
"job_type": {
"type": "string"
},
"required_caps": {
"type": "array",
"items": {
"type": "string"
}
},
"payload_type": {
"type": "string"
},
"executor": {
"type": "string",
"description": "C++ callable expression, e.g. handleCudaTask"
}
},
"required": [
"job_type",
"executor"
]
}
}
},
"required": [
"entries"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_generate_project",
"description": "Generate a C++ project skeleton from a name, description, and dependencies. Returns CMakeLists.txt content, main.cpp stub, and module header paths.",
"input_schema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Project name."
},
"description": {
"type": "string",
"description": "Short project description."
},
"dependencies": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"name",
"description"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_generate_inference_job",
"description": "Generate a HiveMind inference job payload from an entropy observation. Returns a structured job suitable for dispatch to the nexus.",
"input_schema": {
"type": "object",
"properties": {
"goal": {
"type": "string"
},
"entropy_score": {
"type": "integer"
},
"files": {
"type": "array",
"items": {
"type": "string"
}
},
"bounty": {
"type": "string"
}
},
"required": [
"goal",
"entropy_score",
"files"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_assemble_context",
"description": "Assemble minimal cross-file context slices for requested files/symbols and enforce a token budget.",
"input_schema": {
"type": "object",
"properties": {
"files": {
"type": "array",
"description": "List of slice requests.",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "File path relative to workspace."
},
"symbol": {
"type": "string",
"description": "Symbol name to extract (optional)."
},
"line_hint": {
"type": "integer",
"description": "Line number hint (optional)."
},
"head_lines": {
"type": "integer",
"description": "Head fallback line count (optional, default 40)."
}
},
"required": [
"path"
]
}
},
"max_tokens": {
"type": "integer",
"description": "Token budget (default 8000)."
}
},
"required": [
"files"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_validate_taskitem",
"description": "Validate taskitem self-containment quality and resolve prerequisite ops against a workspace root.",
"input_schema": {
"type": "object",
"properties": {
"taskitems": {
"type": "array",
"description": "One or more taskitems to validate.",
"items": {
"type": "object",
"properties": {
"task_id": {
"type": "string"
},
"title": {
"type": "string"
},
"prerequisite_ops": {
"type": "array",
"items": {
"type": "string"
}
},
"reasons": {
"type": "array",
"items": {
"type": "string"
}
},
"confidence": {
"type": "integer"
},
"dependency_task_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"task_id"
]
}
},
"workspace": {
"type": "string",
"description": "Workspace root path to resolve file paths against."
}
},
"required": [
"taskitems"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_start_recording",
"description": "Begin recording MCP tool-call metrics for a new session.",
"input_schema": {
"type": "object",
"properties": {
"session_id": {
"type": "string",
"description": "Unique session identifier."
},
"task_description": {
"type": "string",
"description": "Task description for this session."
}
},
"required": [
"session_id",
"task_description"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_get_metrics",
"description": "Finalize the current recording session and optionally compare against a baseline.",
"input_schema": {
"type": "object",
"properties": {
"session_id": {
"type": "string"
},
"baseline": {
"type": "object",
"description": "Optional baseline SessionRecord JSON."
},
"quality_rating": {
"type": "integer"
},
"baseline_quality": {
"type": "integer"
}
},
"required": [
"session_id"
]
},
"examples": [
{}
]
},
{
"name": "whetstone_score_language_fitness",
"description": "Analyze an AST subtree or spec text and return a ranked list of languages best suited to implement it, with per-language score (0-100) and rationale. Scores against 8 language profiles: Python, Rust, Go, Haskell, C++, TypeScript, Elixir, Lisp.",
"input_schema": {
"type": "object",
"properties": {
"ast": {
"type": "object",
"description": "JSON AST subtree to score. Features are extracted automatically."
},
"spec_text": {
"type": "string",
"description": "Spec text section to extract features from (used when ast absent)."
},
"mutation_ratio": {
"type": "number",
"description": "Override mutation ratio [0,1]. Fraction of AST nodes that are assignments/mutations."
},
"recursion_hint": {
"type": "string",
"description": "Override recursion shape: none | tail | tree | loop"
},
"concurrency_hint": {
"type": "string",
"description": "Override concurrency primitive: none | channels | shared | actors"
},
"io_hint": {
"type": "string",
"description": "Override I/O pattern: none | blocking | async | event"
},
"type_hint": {
"type": "string",
"description": "Override type complexity: none | generics | dependent"
}
},
"required": []
},
"examples": [
{
"description": "Score with manual hints (actor concurrency + event I/O → Elixir)",
"input": { "concurrency_hint": "actors", "io_hint": "event", "recursion_hint": "tail" }
}
]
}
]
}