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>
1245 lines
28 KiB
JSON
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" }
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|