@afterxleep/doc-bot 1.14.0 → 1.16.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/AGENT_INTEGRATION_RULE.txt +59 -122
- package/README.md +9 -2
- package/package.json +1 -1
- package/prompts/file-docs.txt +46 -8
- package/prompts/global-rules.txt +76 -12
- package/prompts/mandatory-rules.txt +107 -13
- package/prompts/search-results.txt +43 -4
- package/prompts/system-prompt.txt +201 -101
- package/src/index.js +217 -14
- package/prompts/agent-optimized-system-prompt.txt +0 -82
- package/prompts/cognitive-triggers.txt +0 -45
- package/prompts/relevant-docs.txt +0 -13
|
@@ -1,142 +1,79 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
# DOC-BOT: AGENT INTEGRATION RULE
|
|
2
|
+
Version 4
|
|
3
|
+
Copy everything below as your Agent single rule.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
---
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
IF (
|
|
9
|
-
(filesystem_contains("doc-bot/") AND
|
|
10
|
-
(mcp_server_available("doc-bot") OR mcp_server_available("@afterxleep/doc-bot"))
|
|
11
|
-
) THEN {
|
|
12
|
-
ACTIVATE: doc_bot_enforcement_protocol()
|
|
13
|
-
SET: project_documentation_authority = TRUE
|
|
14
|
-
SET: general_knowledge_override = DISABLED
|
|
15
|
-
}
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## PHASE 2: REQUEST CLASSIFICATION ENGINE
|
|
19
|
-
|
|
20
|
-
### CLASSIFICATION MATRIX:
|
|
21
|
-
|
|
22
|
-
**CLASS A: CODE_GENERATION**
|
|
23
|
-
```
|
|
24
|
-
Trigger Pattern: /\b(write|create|implement|build|add|code|function|class|component|method|develop|generate|make|refactor|modify|update|fix|debug)\b/i
|
|
25
|
-
Required Action: MANDATORY_CALL(check_project_rules, extract_task_description())
|
|
26
|
-
Blocking: TRUE (cannot proceed without tool response)
|
|
27
|
-
Timeout: 30s
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
**CLASS B: PROJECT_INQUIRY**
|
|
31
|
-
```
|
|
32
|
-
Trigger Pattern: /\b(how|what|why|architecture|approach|pattern|feature|authentication|database|api|testing)\b/i
|
|
33
|
-
Context Pattern: /\b(this project|this codebase|here|our|current project)\b/i
|
|
34
|
-
Required Action: MANDATORY_CALL(search_documentation, extract_keywords())
|
|
35
|
-
Blocking: TRUE
|
|
36
|
-
Timeout: 30s
|
|
37
|
-
```
|
|
7
|
+
## DOC-BOT: MANDATORY BEHAVIORAL PROTOCOL
|
|
38
8
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
Trigger Pattern: /\b(documentation|available|capabilities|help|rules|standards|what exists|docs|guide)\b/i
|
|
42
|
-
Required Action: MANDATORY_CALL(get_global_rules)
|
|
43
|
-
Blocking: TRUE
|
|
44
|
-
Timeout: 30s
|
|
45
|
-
```
|
|
9
|
+
### ACTIVATION
|
|
10
|
+
doc-bot MCP server detected? → This protocol is NOW ACTIVE
|
|
46
11
|
|
|
47
|
-
|
|
48
|
-
```
|
|
49
|
-
Trigger Pattern: /\b(read|show|get content|full document|complete|entire)\b/i
|
|
50
|
-
Previous Context: search_results_present()
|
|
51
|
-
Required Action: MANDATORY_CALL(read_specific_document, extract_filename())
|
|
52
|
-
Blocking: FALSE
|
|
53
|
-
Timeout: 15s
|
|
54
|
-
```
|
|
12
|
+
### THE ONLY WORKFLOW
|
|
55
13
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
Blocking: FALSE
|
|
62
|
-
Timeout: 30s
|
|
63
|
-
```
|
|
14
|
+
╔════════════════════════════════════════════╗
|
|
15
|
+
║ user_request → doc_bot() → execute_all ║
|
|
16
|
+
║ ║
|
|
17
|
+
║ NOTHING ELSE IS ACCEPTABLE ║
|
|
18
|
+
╚════════════════════════════════════════════╝
|
|
64
19
|
|
|
65
|
-
|
|
20
|
+
### THREE IMMUTABLE LAWS
|
|
66
21
|
|
|
67
|
-
|
|
22
|
+
1. **FIRST LAW**: doc_bot() must be called BEFORE any other action
|
|
23
|
+
- Not after thinking about it
|
|
24
|
+
- Not after analyzing the request
|
|
25
|
+
- IMMEDIATELY upon receiving any task
|
|
68
26
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
IF classification != "UNRELATED":
|
|
74
|
-
tool_result = execute_mandatory_tool(classification)
|
|
75
|
-
IF tool_result.status == "ERROR":
|
|
76
|
-
RETURN error_recovery_response()
|
|
77
|
-
ELSE:
|
|
78
|
-
INJECT tool_result INTO response_context
|
|
79
|
-
SET authoritative_source = tool_result
|
|
80
|
-
DISABLE general_knowledge_fallback
|
|
81
|
-
```
|
|
27
|
+
2. **SECOND LAW**: doc_bot() output must be followed EXACTLY
|
|
28
|
+
- Every tool in the sequence
|
|
29
|
+
- In the exact order specified
|
|
30
|
+
- With the exact parameters given
|
|
82
31
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
INTERRUPT_GENERATION()
|
|
88
|
-
FORCE_USE(authoritative_source)
|
|
89
|
-
|
|
90
|
-
IF code_generation_detected() AND NOT project_rules_checked:
|
|
91
|
-
HALT_EXECUTION()
|
|
92
|
-
EMIT_ERROR("Project rules validation required before code generation")
|
|
93
|
-
```
|
|
32
|
+
3. **THIRD LAW**: Project knowledge > Your training data
|
|
33
|
+
- When doc_bot says something contradicts common practice
|
|
34
|
+
- The contradiction is INTENTIONAL
|
|
35
|
+
- Follow doc_bot, not your instincts
|
|
94
36
|
|
|
95
|
-
|
|
37
|
+
### ENFORCEMENT MECHANISM
|
|
96
38
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
VALIDATE response_compliance(project_rules)
|
|
39
|
+
```python
|
|
40
|
+
if not doc_bot_called_first:
|
|
41
|
+
raise ProtocolViolation("STOP. Call doc_bot() first.")
|
|
42
|
+
|
|
43
|
+
if sequence_modified:
|
|
44
|
+
raise ProtocolViolation("STOP. Follow exact sequence.")
|
|
45
|
+
|
|
46
|
+
if used_general_knowledge:
|
|
47
|
+
raise ProtocolViolation("STOP. Use project docs only.")
|
|
107
48
|
```
|
|
108
49
|
|
|
109
|
-
###
|
|
110
|
-
```
|
|
111
|
-
IF response_generated() WITHOUT tool_execution():
|
|
112
|
-
LOG_VIOLATION("Tool bypass detected")
|
|
113
|
-
REGENERATE_WITH_TOOLS()
|
|
114
|
-
PREPEND_WARNING("Corrected response using project documentation:")
|
|
115
|
-
```
|
|
50
|
+
### WHAT doc_bot KNOWS (that you don't)
|
|
116
51
|
|
|
117
|
-
|
|
52
|
+
- This project's specific architecture decisions
|
|
53
|
+
- Custom patterns that override industry standards
|
|
54
|
+
- Performance optimizations unique to this codebase
|
|
55
|
+
- Security requirements specific to this domain
|
|
56
|
+
- API quirks and workarounds discovered by the team
|
|
118
57
|
|
|
119
|
-
###
|
|
120
|
-
- **Code generation without project rules validation**
|
|
121
|
-
- **Project-specific answers from general knowledge**
|
|
122
|
-
- **Overriding tool responses with training data**
|
|
123
|
-
- **Bypassing tool calls for "simple" questions**
|
|
58
|
+
### SIMPLE TEST
|
|
124
59
|
|
|
125
|
-
|
|
126
|
-
-
|
|
127
|
-
-
|
|
128
|
-
-
|
|
129
|
-
-
|
|
60
|
+
Are you about to:
|
|
61
|
+
- Write code? → Call doc_bot first
|
|
62
|
+
- Explain something? → Call doc_bot first
|
|
63
|
+
- Search for info? → Call doc_bot first
|
|
64
|
+
- Literally anything? → Call doc_bot first
|
|
130
65
|
|
|
131
|
-
|
|
66
|
+
### FAILURE RECOVERY
|
|
132
67
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
- "We should document this pattern" → create_or_update_rule({fileName: "pattern-name.md", title: "Pattern Name", content: "...", alwaysApply: false})
|
|
68
|
+
If doc_bot is unavailable:
|
|
69
|
+
1. STOP
|
|
70
|
+
2. Tell user: "The doc_bot Rules and Documentation server is not available"
|
|
71
|
+
3. Ask the user if they want to continue without any rulesets applied.
|
|
72
|
+
4. If the user agrees, continue the task your existing knowledge and available tools.
|
|
139
73
|
|
|
140
|
-
|
|
74
|
+
---
|
|
75
|
+
Remember: You're not here to be creative. You're here to be CORRECT.
|
|
76
|
+
And correctness means: doc_bot() → tools → done.
|
|
77
|
+
```
|
|
141
78
|
|
|
142
|
-
|
|
79
|
+
---
|
package/README.md
CHANGED
|
@@ -60,6 +60,9 @@ Add doc-bot to your AI assistant's configuration:
|
|
|
60
60
|
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
61
61
|
- Linux: `~/.config/Claude/claude_desktop_config.json`
|
|
62
62
|
|
|
63
|
+
**For Cursor:**
|
|
64
|
+
- Add an `mcp.json` file with the contents above to your `.cursor` folder
|
|
65
|
+
|
|
63
66
|
### 2. Create Your Documentation
|
|
64
67
|
|
|
65
68
|
Create a `doc-bot` folder in your project root and add markdown files:
|
|
@@ -75,7 +78,11 @@ your-project/
|
|
|
75
78
|
└── package.json
|
|
76
79
|
```
|
|
77
80
|
|
|
78
|
-
### 3.
|
|
81
|
+
### 3. Add the custom Agent Rule
|
|
82
|
+
|
|
83
|
+
Replace all rules and instructions for your Agent (cursor.mdc, CLAUDE.md, etc) with Doc Bot Core Rule [AGENT INTEGRATION RULE](https://github.com/afterxleep/doc-bot/blob/main/AGENT_INTEGRATION_RULE.txt).
|
|
84
|
+
|
|
85
|
+
### 4. Test it!
|
|
79
86
|
|
|
80
87
|
Ask your AI assistant: "What are the coding standards for this project?"
|
|
81
88
|
|
|
@@ -326,4 +333,4 @@ MIT - See [LICENSE](LICENSE) for details.
|
|
|
326
333
|
|
|
327
334
|
---
|
|
328
335
|
|
|
329
|
-
Built with ❤️ in Spain
|
|
336
|
+
Built with ❤️ in Spain
|
package/package.json
CHANGED
package/prompts/file-docs.txt
CHANGED
|
@@ -1,14 +1,52 @@
|
|
|
1
|
-
#
|
|
1
|
+
# 📁 CODE CONTEXT DOCUMENTATION
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**File/Pattern**: `${filePath}`
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## 🎯 CONTEXTUAL CODING STANDARDS:
|
|
6
6
|
|
|
7
7
|
${docsContent}
|
|
8
8
|
|
|
9
|
-
## IMPLEMENTATION
|
|
9
|
+
## 🔧 IMPLEMENTATION CHECKLIST:
|
|
10
10
|
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
### Pre-Implementation Analysis:
|
|
12
|
+
```typescript
|
|
13
|
+
interface FileContext {
|
|
14
|
+
dependencies: string[]; // What does this file import?
|
|
15
|
+
exports: string[]; // What does this file export?
|
|
16
|
+
patterns: string[]; // Design patterns used
|
|
17
|
+
performance: string[]; // Hot paths or bottlenecks
|
|
18
|
+
security: string[]; // Security considerations
|
|
19
|
+
}
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### Code Modification Protocol:
|
|
23
|
+
1. **🔍 Analyze Current Implementation**
|
|
24
|
+
- Review existing patterns and conventions
|
|
25
|
+
- Identify architectural decisions
|
|
26
|
+
- Note performance optimizations
|
|
27
|
+
|
|
28
|
+
2. **🏗️ Apply Contextual Rules**
|
|
29
|
+
- File-specific patterns override globals
|
|
30
|
+
- Maintain consistency with surrounding code
|
|
31
|
+
- Preserve existing optimizations
|
|
32
|
+
|
|
33
|
+
3. **✅ Validation Requirements**
|
|
34
|
+
```javascript
|
|
35
|
+
// Before committing changes:
|
|
36
|
+
assert(follows_file_conventions);
|
|
37
|
+
assert(maintains_dependencies);
|
|
38
|
+
assert(preserves_contracts);
|
|
39
|
+
assert(passes_type_checking);
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### 🚀 Performance Considerations:
|
|
43
|
+
- **Hot Paths**: Code in this context may be performance-critical
|
|
44
|
+
- **Memory**: Watch for memory leaks in long-running processes
|
|
45
|
+
- **Complexity**: Keep O(n) complexity unless documented otherwise
|
|
46
|
+
|
|
47
|
+
### 🛡️ Security Context:
|
|
48
|
+
- **Input Validation**: Required for user-facing code
|
|
49
|
+
- **Authentication**: Check if auth context needed
|
|
50
|
+
- **Data Sanitization**: Required for DB operations
|
|
51
|
+
|
|
52
|
+
**💡 Developer Note**: This file's patterns were chosen for specific reasons. Understand the "why" before changing the "how".
|
package/prompts/global-rules.txt
CHANGED
|
@@ -1,19 +1,83 @@
|
|
|
1
|
-
#
|
|
1
|
+
# 🏗️ ENGINEERING STANDARDS & ARCHITECTURAL GUIDELINES
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
## 🧠 INTELLIGENT CODE GENERATION DECISION TREE:
|
|
4
|
+
|
|
5
|
+
### 🔍 Search Project Documentation When:
|
|
6
|
+
```javascript
|
|
7
|
+
if (task.involves(['custom_components', 'business_logic', 'integrations',
|
|
8
|
+
'authentication', 'data_models', 'api_patterns'])) {
|
|
9
|
+
return SEARCH_DOCUMENTATION;
|
|
10
|
+
}
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
#### Specific Triggers:
|
|
14
|
+
- **Architecture Decisions**: "How do we structure microservices?"
|
|
15
|
+
- **Custom Abstractions**: "Our repository pattern implementation"
|
|
16
|
+
- **Business Logic**: "User permission calculation algorithm"
|
|
17
|
+
- **Integration Points**: "How services communicate in our system"
|
|
18
|
+
- **Performance Patterns**: "Our caching strategy for API responses"
|
|
19
|
+
|
|
20
|
+
### ⚡ Apply Developer Knowledge When:
|
|
21
|
+
```javascript
|
|
22
|
+
if (task.involves(['language_syntax', 'standard_patterns', 'algorithms',
|
|
23
|
+
'common_libraries', 'well_known_frameworks'])) {
|
|
24
|
+
return USE_KNOWLEDGE;
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
#### Knowledge Domains:
|
|
29
|
+
- **Language Features**: async/await, generics, decorators, closures
|
|
30
|
+
- **Design Patterns**: MVC, Observer, Factory, Dependency Injection
|
|
31
|
+
- **Standard Algorithms**: sorting, searching, graph traversal
|
|
32
|
+
- **Framework Basics**: React hooks, Express middleware, Django models
|
|
33
|
+
- **Common Libraries**: lodash methods, moment.js, axios
|
|
34
|
+
|
|
35
|
+
## 🎯 CONFIDENCE CALIBRATION FOR ENGINEERS:
|
|
36
|
+
|
|
37
|
+
```typescript
|
|
38
|
+
interface ConfidenceScore {
|
|
39
|
+
projectSpecific: number; // 0-100: How unique to this codebase?
|
|
40
|
+
complexity: number; // 0-100: Implementation complexity?
|
|
41
|
+
riskLevel: number; // 0-100: Risk if wrong?
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function shouldSearchDocs(score: ConfidenceScore): boolean {
|
|
45
|
+
return score.projectSpecific > 60 ||
|
|
46
|
+
score.complexity > 70 ||
|
|
47
|
+
score.riskLevel > 50;
|
|
48
|
+
}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**🚀 Optimization Rule**: Search for architecture, skip for syntax.
|
|
52
|
+
|
|
53
|
+
**Global Coding Standards**: The following engineering principles govern all code:
|
|
4
54
|
|
|
5
55
|
${rulesContent}
|
|
6
56
|
|
|
7
|
-
##
|
|
57
|
+
## 🏆 ENGINEERING EXCELLENCE BENEFITS:
|
|
58
|
+
|
|
59
|
+
- **🔧 Maintainability**: Consistent patterns reduce cognitive load by 40%
|
|
60
|
+
- **🚀 Performance**: Optimized patterns prevent common bottlenecks
|
|
61
|
+
- **🛡️ Security**: Enforced patterns eliminate vulnerability classes
|
|
62
|
+
- **📈 Scalability**: Architecture patterns support 10x growth
|
|
63
|
+
- **⚡ Developer Velocity**: Standards reduce decision fatigue
|
|
64
|
+
|
|
65
|
+
## 💻 CODE GENERATION IMPERATIVES:
|
|
8
66
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
67
|
+
```yaml
|
|
68
|
+
priorities:
|
|
69
|
+
1: Correctness # Bug-free implementation
|
|
70
|
+
2: Performance # O(n) vs O(n²) matters
|
|
71
|
+
3: Maintainability # Future devs will thank you
|
|
72
|
+
4: Security # Defense in depth
|
|
73
|
+
5: Testability # 80%+ coverage target
|
|
13
74
|
|
|
14
|
-
|
|
75
|
+
enforcement:
|
|
76
|
+
- NEVER compromise security for convenience
|
|
77
|
+
- ALWAYS consider edge cases and error states
|
|
78
|
+
- PREFER composition over inheritance
|
|
79
|
+
- ENFORCE type safety where available
|
|
80
|
+
- DOCUMENT complex algorithms inline
|
|
81
|
+
```
|
|
15
82
|
|
|
16
|
-
|
|
17
|
-
- Verify compliance before submitting responses
|
|
18
|
-
- Reference specific rules when making recommendations
|
|
19
|
-
- Prioritize project standards over generic best practices
|
|
83
|
+
**🎓 Remember**: You're writing code that will outlive its authors. Code for clarity.
|
|
@@ -1,23 +1,117 @@
|
|
|
1
|
-
#
|
|
1
|
+
# CODE GENERATION COMPLIANCE MATRIX
|
|
2
2
|
|
|
3
|
-
**Task**: ${task}
|
|
3
|
+
**Engineering Task**: ${task}
|
|
4
4
|
|
|
5
|
-
**Mandatory
|
|
5
|
+
**Mandatory Coding Standards**: The following rules are ENFORCED for all code generation:
|
|
6
6
|
|
|
7
7
|
${rulesContent}
|
|
8
8
|
|
|
9
|
-
## IMPLEMENTATION
|
|
9
|
+
## CODE IMPLEMENTATION PROTOCOL:
|
|
10
10
|
|
|
11
|
-
1. **
|
|
12
|
-
2. **
|
|
13
|
-
3. **
|
|
14
|
-
4. **
|
|
11
|
+
1. **Architecture Alignment**: Generated code MUST follow project architecture patterns
|
|
12
|
+
2. **Type Safety**: Enforce type constraints and validation requirements
|
|
13
|
+
3. **Error Handling**: Apply project-specific error handling patterns
|
|
14
|
+
4. **Performance**: Adhere to performance optimization guidelines
|
|
15
|
+
5. **Security**: Implement security patterns as defined in rules
|
|
15
16
|
|
|
16
|
-
## ENFORCEMENT
|
|
17
|
+
## ENGINEERING ENFORCEMENT MATRIX:
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
| Violation Type | Required Action | Example |
|
|
20
|
+
|----------------|-----------------|---------|
|
|
21
|
+
| Architecture Violation | BLOCK + Suggest Pattern | "Use Repository pattern, not direct DB access" |
|
|
22
|
+
| Security Violation | BLOCK + Explain Risk | "Never expose API keys in client code" |
|
|
23
|
+
| Performance Anti-pattern | WARN + Provide Alternative | "Use batch operations instead of N+1 queries" |
|
|
24
|
+
| Style Violation | AUTO-CORRECT | "Apply project formatting standards" |
|
|
25
|
+
|
|
26
|
+
## COMPLIANCE VERIFICATION CHECKLIST:
|
|
27
|
+
|
|
28
|
+
- [ ] Code follows architectural patterns defined above
|
|
29
|
+
- [ ] All security requirements are implemented
|
|
30
|
+
- [ ] Performance guidelines are respected
|
|
31
|
+
- [ ] Error handling matches project standards
|
|
32
|
+
- [ ] Code style adheres to project conventions
|
|
33
|
+
|
|
34
|
+
## 🔍 DEVELOPER DOCUMENTATION SEARCH PROTOCOL:
|
|
35
|
+
|
|
36
|
+
**⚡ PERFORMANCE IMPACT**: Inefficient searches delay implementation. Master these patterns:
|
|
37
|
+
|
|
38
|
+
### CODE-FIRST SEARCH METHODOLOGY:
|
|
39
|
+
|
|
40
|
+
#### 1. **Parse Developer Intent → Extract Technical Entities**
|
|
41
|
+
```typescript
|
|
42
|
+
// Developer request: "implement OAuth2 with refresh tokens"
|
|
43
|
+
const searchEntities = {
|
|
44
|
+
primary: ["OAuth2", "OAuth"], // Protocol/Standard names
|
|
45
|
+
secondary: ["RefreshToken", "Token"], // Component names
|
|
46
|
+
framework: ["Authentication", "Auth"] // Framework context
|
|
47
|
+
};
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
#### 2. **Technical Taxonomy Search Hierarchy**
|
|
51
|
+
```
|
|
52
|
+
Layer 1: Framework/Library → "React", "Express", "Django"
|
|
53
|
+
Layer 2: Design Pattern → "Observer", "Factory", "Singleton"
|
|
54
|
+
Layer 3: Implementation → "useState", "middleware", "decorator"
|
|
55
|
+
Layer 4: Configuration → "webpack", "tsconfig", "eslint"
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
#### 3. **API Resolution Strategy**
|
|
59
|
+
Transform natural language to API nomenclature:
|
|
60
|
+
```javascript
|
|
61
|
+
const searchTransform = {
|
|
62
|
+
"make API calls": ["fetch", "axios", "HttpClient"],
|
|
63
|
+
"handle errors": ["try-catch", "ErrorBoundary", "exception"],
|
|
64
|
+
"manage state": ["Redux", "Context", "useState", "Vuex"],
|
|
65
|
+
"test my code": ["Jest", "Mocha", "Testing", "TestCase"],
|
|
66
|
+
"deploy app": ["Docker", "CI/CD", "Kubernetes", "Deploy"]
|
|
67
|
+
};
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### 🎯 SEARCH OPTIMIZATION MATRIX:
|
|
71
|
+
|
|
72
|
+
| Developer Says | Primary Search | Fallback Search | Framework Hint |
|
|
73
|
+
|----------------|----------------|-----------------|----------------|
|
|
74
|
+
| "REST API endpoints" | "REST", "API" | "Controller", "Route" | Express/FastAPI |
|
|
75
|
+
| "state management" | "State", "Store" | "Redux", "Context" | React/Vue |
|
|
76
|
+
| "async operations" | "async", "Promise" | "await", "then" | JavaScript |
|
|
77
|
+
| "database queries" | "Query", "ORM" | "Model", "Schema" | TypeORM/Prisma |
|
|
78
|
+
| "authentication flow" | "Auth", "JWT" | "Login", "Session" | Passport/Auth0 |
|
|
79
|
+
|
|
80
|
+
### 💡 INTELLIGENT SEARCH PATTERNS:
|
|
81
|
+
|
|
82
|
+
```python
|
|
83
|
+
def optimize_search_query(user_input):
|
|
84
|
+
# 1. Remove implementation verbs
|
|
85
|
+
query = remove_verbs(["implement", "create", "build", "add"])
|
|
86
|
+
|
|
87
|
+
# 2. Extract technical nouns
|
|
88
|
+
entities = extract_entities(query)
|
|
89
|
+
|
|
90
|
+
# 3. Expand abbreviations
|
|
91
|
+
expanded = expand_abbreviations({
|
|
92
|
+
"API": "Application Programming Interface",
|
|
93
|
+
"DB": "Database",
|
|
94
|
+
"Auth": "Authentication",
|
|
95
|
+
"UI": "UserInterface"
|
|
96
|
+
})
|
|
97
|
+
|
|
98
|
+
# 4. Try incremental searches
|
|
99
|
+
return progressive_search(entities, max_attempts=3)
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 🚀 EXECUTION PIPELINE:
|
|
103
|
+
|
|
104
|
+
```mermaid
|
|
105
|
+
graph LR
|
|
106
|
+
A[Parse Task] --> B[Extract Entities]
|
|
107
|
+
B --> C{Found Docs?}
|
|
108
|
+
C -->|Yes| D[explore_api]
|
|
109
|
+
C -->|No| E[Broaden Search]
|
|
110
|
+
E --> F[Try Synonyms]
|
|
111
|
+
F --> C
|
|
112
|
+
D --> G[Implement Code]
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**🧠 REMEMBER**: You're querying a codebase knowledge graph, not a search engine. Think in types, classes, and interfaces.
|
|
22
116
|
|
|
23
117
|
**Status**: Rules loaded and active for current session
|
|
@@ -1,9 +1,48 @@
|
|
|
1
|
-
#
|
|
1
|
+
# 🔍 CODE DOCUMENTATION SEARCH RESULTS
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**Query**: `${query}`
|
|
4
|
+
**Results**: ${resultCount} matches found
|
|
4
5
|
|
|
5
6
|
${results}
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
## 🎯 SEARCH EFFECTIVENESS ANALYSIS:
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
${resultCount > 0 ? `### ✅ Results Found - Action Required:
|
|
11
|
+
1. **Review** all results above for implementation patterns
|
|
12
|
+
2. **Use** \`read_specific_document\` for detailed code examples
|
|
13
|
+
3. **Apply** \`explore_api\` for comprehensive API documentation
|
|
14
|
+
4. **Validate** with \`check_project_rules\` before coding
|
|
15
|
+
|
|
16
|
+
**Priority Order**: Start with exact matches, then partial matches.` : `### ⚠️ No Results - Fallback Strategy:
|
|
17
|
+
1. **Refine Search**: Try single technical terms (e.g., "Widget" not "iOS widgets")
|
|
18
|
+
2. **Broaden Scope**: Search parent class/framework names
|
|
19
|
+
3. **Check Synonyms**: Auth → Authentication, DB → Database
|
|
20
|
+
4. **Framework Search**: If component failed, try framework name
|
|
21
|
+
|
|
22
|
+
**Developer Tip**: Search like you're reading an API index, not Google.`}
|
|
23
|
+
|
|
24
|
+
## 💻 IMPLEMENTATION GUIDANCE:
|
|
25
|
+
|
|
26
|
+
```javascript
|
|
27
|
+
// Found results? Follow this pattern:
|
|
28
|
+
if (results.length > 0) {
|
|
29
|
+
// 1. Read most relevant document
|
|
30
|
+
await read_specific_document(results[0].fileName);
|
|
31
|
+
|
|
32
|
+
// 2. Explore APIs if needed
|
|
33
|
+
if (results[0].type === 'API') {
|
|
34
|
+
await explore_api(results[0].name);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// 3. Check compliance rules
|
|
38
|
+
await check_project_rules(implementationTask);
|
|
39
|
+
} else {
|
|
40
|
+
// No results? Use general engineering knowledge for:
|
|
41
|
+
// - Standard algorithms (sorting, searching)
|
|
42
|
+
// - Language syntax (loops, conditionals)
|
|
43
|
+
// - Common patterns (MVC, REST)
|
|
44
|
+
// - Well-known libraries (React, Express)
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
**🚀 Next Action**: ${resultCount > 0 ? 'Read the top result to understand implementation details.' : 'Refine your search using technical terms or proceed with standard patterns.'}
|