hematite/tools/
scoping_tools.rs1use serde_json::{json, Value};
2
3pub fn get_scoping_definitions() -> Vec<Value> {
4 vec![
5 json!({
6 "name": "auto_pin_context",
7 "description": "Select 1-3 core files to 'Lock' into high-fidelity memory. \
8 Use this to ensure the most important architecture files \
9 are always visible during complex refactorings.",
10 "parameters": {
11 "type": "object",
12 "properties": {
13 "paths": {
14 "type": "array",
15 "items": { "type": "string" },
16 "description": "List of relative paths to pin (max 3)."
17 },
18 "reason": {
19 "type": "string",
20 "description": "Brief explanation of why these files are the project's 'Core' for the current task."
21 }
22 },
23 "required": ["paths", "reason"]
24 }
25 }),
26 json!({
27 "name": "list_pinned",
28 "description": "List all files currently pinned in the model's active context.",
29 "parameters": {
30 "type": "object",
31 "properties": {}
32 }
33 }),
34 ]
35}