bobo-ai-cli 3.0.0 → 3.0.3
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/bundled-skills/CORE_SKILLS.txt +18 -0
- package/dist/agent.js +25 -6
- package/dist/agent.js.map +1 -1
- package/dist/cli.js +9 -7
- package/dist/cli.js.map +1 -1
- package/dist/config.js +3 -2
- package/dist/config.js.map +1 -1
- package/dist/cost-tracker.js +1 -0
- package/dist/cost-tracker.js.map +1 -1
- package/dist/dream.js +6 -3
- package/dist/dream.js.map +1 -1
- package/dist/hooks.js +3 -2
- package/dist/hooks.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/knowledge.js +3 -2
- package/dist/knowledge.js.map +1 -1
- package/dist/mcp-client.js +59 -41
- package/dist/mcp-client.js.map +1 -1
- package/dist/memory.js +24 -18
- package/dist/memory.js.map +1 -1
- package/dist/project.js +2 -1
- package/dist/project.js.map +1 -1
- package/dist/providers.js +1 -1
- package/dist/providers.js.map +1 -1
- package/dist/repl.js +4 -2
- package/dist/repl.js.map +1 -1
- package/dist/sessions.js +37 -4
- package/dist/sessions.js.map +1 -1
- package/dist/skill-router.js +2 -2
- package/dist/skill-router.js.map +1 -1
- package/dist/skills/loader.js +2 -2
- package/dist/skills/loader.js.map +1 -1
- package/dist/skills.js +9 -8
- package/dist/skills.js.map +1 -1
- package/dist/state/artifacts.js +4 -2
- package/dist/state/artifacts.js.map +1 -1
- package/dist/state/manager.js +4 -2
- package/dist/state/manager.js.map +1 -1
- package/dist/state/project-memory.js +4 -2
- package/dist/state/project-memory.js.map +1 -1
- package/dist/state/recovery.js +3 -2
- package/dist/state/recovery.js.map +1 -1
- package/dist/structured/loader.js +4 -2
- package/dist/structured/loader.js.map +1 -1
- package/dist/sub-agent-runner.js +3 -2
- package/dist/sub-agent-runner.js.map +1 -1
- package/dist/sub-agents.js +5 -3
- package/dist/sub-agents.js.map +1 -1
- package/dist/tool-governance.js +43 -12
- package/dist/tool-governance.js.map +1 -1
- package/dist/tools/advanced.js +3 -2
- package/dist/tools/advanced.js.map +1 -1
- package/dist/tools/browser.js +2 -2
- package/dist/tools/browser.js.map +1 -1
- package/dist/tools/claude-code.js +2 -2
- package/dist/tools/claude-code.js.map +1 -1
- package/dist/tools/index.js +36 -12
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/process-manager.js +2 -2
- package/dist/tools/process-manager.js.map +1 -1
- package/dist/verification-agent.js +15 -10
- package/dist/verification-agent.js.map +1 -1
- package/dist/watcher.js +2 -2
- package/dist/watcher.js.map +1 -1
- package/dist/web.js +1 -1
- package/dist/web.js.map +1 -1
- package/dist/workflows/ask.js +1 -1
- package/dist/workflows/ask.js.map +1 -1
- package/package.json +17 -2
- package/bundled-skills/Skill_Seekers/SKILL.md +0 -1722
- package/bundled-skills/ab-test-setup/SKILL.md +0 -557
- package/bundled-skills/adversarial-verification/SKILL.md +0 -95
- package/bundled-skills/agent-sdk-dev/SKILL.md +0 -238
- package/bundled-skills/agent-tools/SKILL.md +0 -136
- package/bundled-skills/analytics-tracking/SKILL.md +0 -597
- package/bundled-skills/artifacts-builder/SKILL.md +0 -89
- package/bundled-skills/asana/SKILL.md +0 -13
- package/bundled-skills/brand-voice/SKILL.md +0 -481
- package/bundled-skills/browser-use/SKILL.md +0 -419
- package/bundled-skills/cache-optimization-skill/SKILL.md +0 -179
- package/bundled-skills/canvas-design/SKILL.md +0 -147
- package/bundled-skills/citation-validator/SKILL.md +0 -203
- package/bundled-skills/clangd-lsp/SKILL.md +0 -52
- package/bundled-skills/code-simplifier/SKILL.md +0 -13
- package/bundled-skills/commit-commands/SKILL.md +0 -258
- package/bundled-skills/competitor-alternatives/SKILL.md +0 -795
- package/bundled-skills/content-atomizer/SKILL.md +0 -910
- package/bundled-skills/content-research-writer/SKILL.md +0 -605
- package/bundled-skills/context7/SKILL.md +0 -13
- package/bundled-skills/copy-editing/SKILL.md +0 -494
- package/bundled-skills/copywriting/SKILL.md +0 -510
- package/bundled-skills/csharp-lsp/SKILL.md +0 -40
- package/bundled-skills/decision-making-framework/SKILL.md +0 -154
- package/bundled-skills/deep-research/SKILL.md +0 -236
- package/bundled-skills/developer-growth-analysis/SKILL.md +0 -335
- package/bundled-skills/direct-response-copy/SKILL.md +0 -2336
- package/bundled-skills/docker-expert/SKILL.md +0 -229
- package/bundled-skills/document-skills/SKILL.md +0 -13
- package/bundled-skills/documentation-expert/SKILL.md +0 -126
- package/bundled-skills/email-sequence/SKILL.md +0 -1061
- package/bundled-skills/email-sequences/SKILL.md +0 -910
- package/bundled-skills/example-plugin/SKILL.md +0 -72
- package/bundled-skills/explanatory-output-style/SKILL.md +0 -82
- package/bundled-skills/feature-dev/SKILL.md +0 -458
- package/bundled-skills/file-organizer/SKILL.md +0 -466
- package/bundled-skills/firebase.disabled/SKILL.md +0 -13
- package/bundled-skills/form-cro/SKILL.md +0 -488
- package/bundled-skills/free-tool-strategy/SKILL.md +0 -636
- package/bundled-skills/frontend-design/SKILL.md +0 -41
- package/bundled-skills/frontend-design-offical/SKILL.md +0 -55
- package/bundled-skills/gitlab/SKILL.md +0 -13
- package/bundled-skills/gopls-lsp/SKILL.md +0 -32
- package/bundled-skills/got-controller/SKILL.md +0 -218
- package/bundled-skills/greptile/SKILL.md +0 -72
- package/bundled-skills/hookify/SKILL.md +0 -376
- package/bundled-skills/image-editor/SKILL.md +0 -189
- package/bundled-skills/image-enhancer/SKILL.md +0 -109
- package/bundled-skills/jdtls-lsp/SKILL.md +0 -49
- package/bundled-skills/json-canvas/SKILL.md +0 -654
- package/bundled-skills/keyword-research/SKILL.md +0 -559
- package/bundled-skills/kotlin-lsp/SKILL.md +0 -28
- package/bundled-skills/laravel-boost/SKILL.md +0 -13
- package/bundled-skills/launch-strategy/SKILL.md +0 -394
- package/bundled-skills/lead-magnet/SKILL.md +0 -393
- package/bundled-skills/learning-output-style/SKILL.md +0 -106
- package/bundled-skills/linear/SKILL.md +0 -13
- package/bundled-skills/lua-lsp/SKILL.md +0 -47
- package/bundled-skills/marketing-ideas/SKILL.md +0 -720
- package/bundled-skills/marketing-psychology/SKILL.md +0 -534
- package/bundled-skills/mcp-builder/SKILL.md +0 -369
- package/bundled-skills/meeting-insights-analyzer/SKILL.md +0 -347
- package/bundled-skills/memory-evolution-system/SKILL.md +0 -172
- package/bundled-skills/multi-lens-thinking/SKILL.md +0 -407
- package/bundled-skills/nano-banana-pro/SKILL.md +0 -116
- package/bundled-skills/newsletter/SKILL.md +0 -736
- package/bundled-skills/notebooklm/SKILL.md +0 -296
- package/bundled-skills/obsidian-bases/SKILL.md +0 -634
- package/bundled-skills/obsidian-markdown/SKILL.md +0 -651
- package/bundled-skills/onboarding-cro/SKILL.md +0 -494
- package/bundled-skills/page-cro/SKILL.md +0 -379
- package/bundled-skills/paid-ads/SKILL.md +0 -624
- package/bundled-skills/paywall-upgrade-cro/SKILL.md +0 -651
- package/bundled-skills/php-lsp/SKILL.md +0 -36
- package/bundled-skills/playwright/SKILL.md +0 -13
- package/bundled-skills/plugin-dev/SKILL.md +0 -434
- package/bundled-skills/popup-cro/SKILL.md +0 -520
- package/bundled-skills/positioning-angles/SKILL.md +0 -330
- package/bundled-skills/pr-review-toolkit/SKILL.md +0 -359
- package/bundled-skills/pricing-strategy/SKILL.md +0 -777
- package/bundled-skills/proactive-self-improving/SKILL.md +0 -435
- package/bundled-skills/programmatic-seo/SKILL.md +0 -714
- package/bundled-skills/pyright-lsp/SKILL.md +0 -43
- package/bundled-skills/quality-assurance-framework/SKILL.md +0 -168
- package/bundled-skills/question-refiner/SKILL.md +0 -160
- package/bundled-skills/ralph-loop/SKILL.md +0 -205
- package/bundled-skills/refactoring-expert/SKILL.md +0 -103
- package/bundled-skills/referral-program/SKILL.md +0 -668
- package/bundled-skills/research-executor/SKILL.md +0 -164
- package/bundled-skills/review-with-security/SKILL.md +0 -12
- package/bundled-skills/rust-analyzer-lsp/SKILL.md +0 -50
- package/bundled-skills/schema-markup/SKILL.md +0 -647
- package/bundled-skills/security-audit-expert/SKILL.md +0 -124
- package/bundled-skills/security-expert/SKILL.md +0 -140
- package/bundled-skills/security-guidance/SKILL.md +0 -13
- package/bundled-skills/seedance-prompt/SKILL.md +0 -139
- package/bundled-skills/self-evolution/SKILL.md +0 -1160
- package/bundled-skills/seo-audit/SKILL.md +0 -432
- package/bundled-skills/seo-content/SKILL.md +0 -787
- package/bundled-skills/serena/SKILL.md +0 -13
- package/bundled-skills/signup-flow-cro/SKILL.md +0 -409
- package/bundled-skills/skill-manager/SKILL.md +0 -226
- package/bundled-skills/skill-share/SKILL.md +0 -98
- package/bundled-skills/slack/SKILL.md +0 -13
- package/bundled-skills/social-content/SKILL.md +0 -878
- package/bundled-skills/spec-flow-skill/SKILL.md +0 -124
- package/bundled-skills/stripe/SKILL.md +0 -13
- package/bundled-skills/supabase/SKILL.md +0 -13
- package/bundled-skills/swift-lsp/SKILL.md +0 -40
- package/bundled-skills/synthesizer/SKILL.md +0 -236
- package/bundled-skills/template-skill/SKILL.md +0 -16
- package/bundled-skills/theme-factory/SKILL.md +0 -72
- package/bundled-skills/tiktok-research/SKILL.md +0 -208
- package/bundled-skills/typescript-lsp/SKILL.md +0 -36
- package/bundled-skills/ui-ux-pro-max/SKILL.md +0 -247
- package/bundled-skills/visual-prompt-engineer/SKILL.md +0 -102
- package/bundled-skills/webapp-testing/SKILL.md +0 -111
- package/bundled-skills/wide-research/SKILL.md +0 -191
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: "gopls-lsp"
|
|
3
|
-
title: "gopls-lsp"
|
|
4
|
-
category: "other"
|
|
5
|
-
tags: ["gopls-lsp", "supported extensions", "installation", "more information"]
|
|
6
|
-
triggers: []
|
|
7
|
-
dependencies: []
|
|
8
|
-
source: "E:/Bobo's Coding cache/.claude/skills/gopls-lsp"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# gopls-lsp
|
|
12
|
-
|
|
13
|
-
Go language server for Claude Code, providing code intelligence, refactoring, and analysis.
|
|
14
|
-
|
|
15
|
-
## Supported Extensions
|
|
16
|
-
|
|
17
|
-
`.go`
|
|
18
|
-
|
|
19
|
-
## Installation
|
|
20
|
-
|
|
21
|
-
Install gopls using the Go toolchain:
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
go install golang.org/x/tools/gopls@latest
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
Make sure `$GOPATH/bin` (or `$HOME/go/bin`) is in your PATH.
|
|
28
|
-
|
|
29
|
-
## More Information
|
|
30
|
-
|
|
31
|
-
- [gopls Documentation](https://pkg.go.dev/golang.org/x/tools/gopls)
|
|
32
|
-
- [GitHub Repository](https://github.com/golang/tools/tree/master/gopls)
|
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: "got-controller"
|
|
3
|
-
title: "GoT Controller"
|
|
4
|
-
category: "research"
|
|
5
|
-
tags: ["got controller", "role", "what is graph of thoughts?", "core got operations", "decision logic", "graph state management", "got graph state", "tool usage", "best practices", "examples"]
|
|
6
|
-
triggers: []
|
|
7
|
-
dependencies: []
|
|
8
|
-
source: "E:/Bobo's Coding cache/.claude/skills/got-controller"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
name: got-controller
|
|
13
|
-
description: Graph of Thoughts (GoT) Controller - 管理研究图状态,执行图操作(Generate, Aggregate, Refine, Score),优化研究路径质量。当研究主题复杂或多方面、需要策略性探索(深度 vs 广度)、高质量研究时使用此技能。
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
# GoT Controller
|
|
17
|
-
|
|
18
|
-
## Role
|
|
19
|
-
|
|
20
|
-
You are a **Graph of Thoughts (GoT) Controller** responsible for managing research as a graph operations framework. You orchestrate complex multi-agent research using the GoT paradigm, optimizing information quality through strategic generation, aggregation, refinement, and scoring operations.
|
|
21
|
-
|
|
22
|
-
## What is Graph of Thoughts?
|
|
23
|
-
|
|
24
|
-
Graph of Thoughts (GoT) is a framework inspired by [SPCL, ETH Zürich](https://github.com/spcl/graph-of-thoughts) that models reasoning as a graph where:
|
|
25
|
-
|
|
26
|
-
- **Nodes** = Research findings, insights, or conclusions
|
|
27
|
-
- **Edges** = Dependencies and relationships between findings
|
|
28
|
-
- **Scores** = Quality ratings (0-10 scale) assigned to each node
|
|
29
|
-
- **Frontier** = Set of active nodes available for further exploration
|
|
30
|
-
- **Operations** = Transformations that manipulate the graph state
|
|
31
|
-
|
|
32
|
-
## Core GoT Operations
|
|
33
|
-
|
|
34
|
-
### 1. Generate(k)
|
|
35
|
-
|
|
36
|
-
**Purpose**: Create k new research paths from a parent node
|
|
37
|
-
|
|
38
|
-
**When to Use**:
|
|
39
|
-
|
|
40
|
-
- Initial exploration of a topic
|
|
41
|
-
- Expanding on high-quality findings
|
|
42
|
-
- Exploring multiple angles simultaneously
|
|
43
|
-
|
|
44
|
-
**Implementation**: Spawn k parallel research agents, each exploring a distinct aspect
|
|
45
|
-
|
|
46
|
-
### 2. Aggregate(k)
|
|
47
|
-
|
|
48
|
-
**Purpose**: Combine k nodes into one stronger, comprehensive synthesis
|
|
49
|
-
|
|
50
|
-
**When to Use**:
|
|
51
|
-
|
|
52
|
-
- Multiple agents have researched related aspects
|
|
53
|
-
- You need to combine findings into a cohesive whole
|
|
54
|
-
- Resolving contradictions between sources
|
|
55
|
-
|
|
56
|
-
**Implementation**: Combine findings, resolve conflicts, extract key insights
|
|
57
|
-
|
|
58
|
-
### 3. Refine(1)
|
|
59
|
-
|
|
60
|
-
**Purpose**: Improve and polish an existing finding without adding new research
|
|
61
|
-
|
|
62
|
-
**When to Use**:
|
|
63
|
-
|
|
64
|
-
- A node has good content but needs better organization
|
|
65
|
-
- Clarifying ambiguous findings
|
|
66
|
-
- Improving citation quality and completeness
|
|
67
|
-
|
|
68
|
-
**Implementation**: Improve clarity, completeness, citations, structure
|
|
69
|
-
|
|
70
|
-
### 4. Score
|
|
71
|
-
|
|
72
|
-
**Purpose**: Evaluate the quality of a research finding (0-10 scale)
|
|
73
|
-
|
|
74
|
-
**Scoring Criteria**:
|
|
75
|
-
|
|
76
|
-
- **9-10 (Excellent)**: Multiple high-quality sources (A-B), no contradictions, comprehensive
|
|
77
|
-
- **7-8 (Good)**: Adequate sources, minor ambiguities, good coverage
|
|
78
|
-
- **5-6 (Acceptable)**: Mix of source qualities, some contradictions, moderate coverage
|
|
79
|
-
- **3-4 (Poor)**: Limited/low-quality sources, significant contradictions, incomplete
|
|
80
|
-
- **0-2 (Very Poor)**: No verifiable sources, major errors, severely incomplete
|
|
81
|
-
|
|
82
|
-
### 5. KeepBestN(n)
|
|
83
|
-
|
|
84
|
-
**Purpose**: Prune low-quality nodes, keeping only the top n at each level
|
|
85
|
-
|
|
86
|
-
**When to Use**:
|
|
87
|
-
|
|
88
|
-
- Managing graph complexity
|
|
89
|
-
- Focusing resources on high-quality paths
|
|
90
|
-
- Preventing exponential growth of nodes
|
|
91
|
-
|
|
92
|
-
## GoT Research Execution Patterns
|
|
93
|
-
|
|
94
|
-
### Pattern 1: Balanced Exploration (Most Common)
|
|
95
|
-
|
|
96
|
-
**Use for**: Most research scenarios - balance breadth and depth
|
|
97
|
-
|
|
98
|
-
```
|
|
99
|
-
Iteration 1: Generate(4) from root
|
|
100
|
-
→ 4 parallel research paths
|
|
101
|
-
→ Score: [7.2, 8.5, 6.8, 7.9]
|
|
102
|
-
|
|
103
|
-
Iteration 2: Strategy based on scores
|
|
104
|
-
→ High score (8.5): Generate(2) - explore deeper
|
|
105
|
-
→ Medium scores (7.2, 7.9): Refine(1) each
|
|
106
|
-
→ Low score (6.8): Discard
|
|
107
|
-
|
|
108
|
-
Iteration 3: Aggregate(3) best nodes
|
|
109
|
-
→ 1 synthesis node
|
|
110
|
-
|
|
111
|
-
Iteration 4: Refine(1) synthesis
|
|
112
|
-
→ Final output
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
### Pattern 2: Breadth-First Exploration
|
|
116
|
-
|
|
117
|
-
**Use for**: Initial research on broad topics
|
|
118
|
-
|
|
119
|
-
```
|
|
120
|
-
Iteration 1: Generate(5) from root
|
|
121
|
-
→ Score all 5 nodes
|
|
122
|
-
→ KeepBestN(3)
|
|
123
|
-
|
|
124
|
-
Iteration 2: Generate(2) from each of the 3 best nodes
|
|
125
|
-
→ Score all 6 nodes
|
|
126
|
-
→ KeepBestN(3)
|
|
127
|
-
|
|
128
|
-
Iteration 3: Aggregate(3) best nodes
|
|
129
|
-
→ Final synthesis
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
### Pattern 3: Depth-First Exploration
|
|
133
|
-
|
|
134
|
-
**Use for**: Deep dive into specific high-value aspects
|
|
135
|
-
|
|
136
|
-
```
|
|
137
|
-
Iteration 1: Generate(3) from root
|
|
138
|
-
→ Identify best node (e.g., score 8.5)
|
|
139
|
-
|
|
140
|
-
Iteration 2: Generate(3) from best node only
|
|
141
|
-
→ Score and KeepBestN(1)
|
|
142
|
-
|
|
143
|
-
Iteration 3: Generate(2) from best child node
|
|
144
|
-
→ Score and KeepBestN(1)
|
|
145
|
-
|
|
146
|
-
Iteration 4: Refine(1) final deep finding
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
## Decision Logic
|
|
150
|
-
|
|
151
|
-
- **Generate**: Starting new paths, exploring multiple aspects, diving deeper (threshold: score ≥ 7.0)
|
|
152
|
-
- **Aggregate**: Multiple related findings exist, need comprehensive synthesis
|
|
153
|
-
- **Refine**: Good finding needing polish, citation quality improvement (threshold: score ≥ 6.0)
|
|
154
|
-
- **Prune**: Too many nodes, low-quality findings (criteria: score < 6.0 OR redundant)
|
|
155
|
-
|
|
156
|
-
## Integration with 7-Phase Research Process
|
|
157
|
-
|
|
158
|
-
- **Phase 2**: Use Generate to break main topic into subtopics
|
|
159
|
-
- **Phase 3**: Use Generate + Score for multi-agent deployment
|
|
160
|
-
- **Phase 4**: Use Aggregate to combine findings
|
|
161
|
-
- **Phase 5**: Use Aggregate + Refine for synthesis
|
|
162
|
-
- **Phase 6**: Use Score + Refine for quality assurance
|
|
163
|
-
|
|
164
|
-
## Graph State Management
|
|
165
|
-
|
|
166
|
-
Maintain graph state using this structure:
|
|
167
|
-
|
|
168
|
-
```markdown
|
|
169
|
-
## GoT Graph State
|
|
170
|
-
|
|
171
|
-
### Nodes
|
|
172
|
-
|
|
173
|
-
| Node ID | Content Summary | Score | Parent | Status |
|
|
174
|
-
| ------- | ----------------- | ----- | ------- | -------- |
|
|
175
|
-
| root | Research topic | - | - | complete |
|
|
176
|
-
| 1 | Aspect A findings | 7.2 | root | complete |
|
|
177
|
-
| final | Synthesis | 9.3 | [1,2,3] | complete |
|
|
178
|
-
|
|
179
|
-
### Operations Log
|
|
180
|
-
|
|
181
|
-
1. Generate(4) from root → nodes [1,2,3,4]
|
|
182
|
-
2. Score all nodes → [7.2, 8.5, 6.8, 7.9]
|
|
183
|
-
3. Aggregate(4) → final synthesis
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
## Tool Usage
|
|
187
|
-
|
|
188
|
-
### Task Tool (Multi-Agent Deployment)
|
|
189
|
-
|
|
190
|
-
Launch multiple Task agents in ONE response for Generate operations
|
|
191
|
-
|
|
192
|
-
### TodoWrite (Progress Tracking)
|
|
193
|
-
|
|
194
|
-
Track GoT operations: Generate(k), Score, KeepBestN(n), Aggregate(k), Refine(1)
|
|
195
|
-
|
|
196
|
-
### Read/Write (Graph Persistence)
|
|
197
|
-
|
|
198
|
-
Save graph state to files: `research_notes/got_graph_state.md`, `research_notes/got_operations_log.md`
|
|
199
|
-
|
|
200
|
-
## Best Practices
|
|
201
|
-
|
|
202
|
-
1. **Start Simple**: First iteration: Generate(3-5) from root
|
|
203
|
-
2. **Prune Aggressively**: If score < 6.0, prune immediately
|
|
204
|
-
3. **Aggregate Strategically**: After 2-3 rounds of generation
|
|
205
|
-
4. **Refine Selectively**: Only refine nodes with score ≥ 7.0
|
|
206
|
-
5. **Score Consistently**: Use the same criteria throughout
|
|
207
|
-
|
|
208
|
-
## Examples
|
|
209
|
-
|
|
210
|
-
See [examples.md](examples.md) for detailed usage examples.
|
|
211
|
-
|
|
212
|
-
## Remember
|
|
213
|
-
|
|
214
|
-
You are the **GoT Controller** - you orchestrate research as a graph, making strategic decisions about which paths to explore, which to prune, and how to combine findings.
|
|
215
|
-
|
|
216
|
-
**Core Philosophy**: Better to explore 3 paths deeply than 10 paths shallowly.
|
|
217
|
-
|
|
218
|
-
**Your Superpower**: Parallel exploration + strategic pruning = higher quality than sequential research.
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: "greptile"
|
|
3
|
-
title: "Greptile"
|
|
4
|
-
category: "other"
|
|
5
|
-
tags: ["greptile", "setup", "available tools", "example usage", "documentation"]
|
|
6
|
-
triggers: []
|
|
7
|
-
dependencies: []
|
|
8
|
-
source: "E:/Bobo's Coding cache/.claude/skills/greptile"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Greptile
|
|
12
|
-
|
|
13
|
-
[Greptile](https://greptile.com) is an AI code review agent for GitHub and GitLab that automatically reviews pull requests. This plugin connects Claude Code to your Greptile account, letting you view and resolve Greptile's review comments directly from your terminal.
|
|
14
|
-
|
|
15
|
-
## Setup
|
|
16
|
-
|
|
17
|
-
### 1. Create a Greptile Account
|
|
18
|
-
|
|
19
|
-
Sign up at [greptile.com](https://greptile.com) and connect your GitHub or GitLab repositories.
|
|
20
|
-
|
|
21
|
-
### 2. Get Your API Key
|
|
22
|
-
|
|
23
|
-
1. Go to [API Settings](https://app.greptile.com/settings/api)
|
|
24
|
-
2. Generate a new API key
|
|
25
|
-
3. Copy the key
|
|
26
|
-
|
|
27
|
-
### 3. Set Environment Variable
|
|
28
|
-
|
|
29
|
-
Add to your shell profile (`.bashrc`, `.zshrc`, etc.):
|
|
30
|
-
|
|
31
|
-
```bash
|
|
32
|
-
export GREPTILE_API_KEY="your-api-key-here"
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
Then reload your shell or run `source ~/.zshrc`.
|
|
36
|
-
|
|
37
|
-
## Available Tools
|
|
38
|
-
|
|
39
|
-
### Pull Request Tools
|
|
40
|
-
|
|
41
|
-
- `list_pull_requests` - List PRs with optional filtering by repo, branch, author, or state
|
|
42
|
-
- `get_merge_request` - Get detailed PR info including review analysis
|
|
43
|
-
- `list_merge_request_comments` - Get all comments on a PR with filtering options
|
|
44
|
-
|
|
45
|
-
### Code Review Tools
|
|
46
|
-
|
|
47
|
-
- `list_code_reviews` - List code reviews with optional filtering
|
|
48
|
-
- `get_code_review` - Get detailed code review information
|
|
49
|
-
- `trigger_code_review` - Start a new Greptile review on a PR
|
|
50
|
-
|
|
51
|
-
### Comment Search
|
|
52
|
-
|
|
53
|
-
- `search_greptile_comments` - Search across all Greptile review comments
|
|
54
|
-
|
|
55
|
-
### Custom Context Tools
|
|
56
|
-
|
|
57
|
-
- `list_custom_context` - List your organization's coding patterns and rules
|
|
58
|
-
- `get_custom_context` - Get details for a specific pattern
|
|
59
|
-
- `search_custom_context` - Search patterns by content
|
|
60
|
-
- `create_custom_context` - Create a new coding pattern
|
|
61
|
-
|
|
62
|
-
## Example Usage
|
|
63
|
-
|
|
64
|
-
Ask Claude Code to:
|
|
65
|
-
|
|
66
|
-
- "Show me Greptile's comments on my current PR and help me resolve them"
|
|
67
|
-
- "What issues did Greptile find on PR #123?"
|
|
68
|
-
- "Trigger a Greptile review on this branch"
|
|
69
|
-
|
|
70
|
-
## Documentation
|
|
71
|
-
|
|
72
|
-
For more information, visit [greptile.com/docs](https://greptile.com/docs).
|
|
@@ -1,376 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: "hookify"
|
|
3
|
-
title: "Hookify Plugin"
|
|
4
|
-
category: "dev-tools"
|
|
5
|
-
tags: ["hookify plugin", "overview", "quick start", "usage", "rule configuration format", "event types", "pattern syntax", "examples", "advanced usage", "management"]
|
|
6
|
-
triggers: []
|
|
7
|
-
dependencies: []
|
|
8
|
-
source: "E:/Bobo's Coding cache/.claude/skills/hookify"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Hookify Plugin
|
|
12
|
-
|
|
13
|
-
Easily create custom hooks to prevent unwanted behaviors by analyzing conversation patterns or from explicit instructions.
|
|
14
|
-
|
|
15
|
-
## Overview
|
|
16
|
-
|
|
17
|
-
The hookify plugin makes it simple to create hooks without editing complex `hooks.json` files. Instead, you create lightweight markdown configuration files that define patterns to watch for and messages to show when those patterns match.
|
|
18
|
-
|
|
19
|
-
**Key features:**
|
|
20
|
-
|
|
21
|
-
- 🎯 Analyze conversations to find unwanted behaviors automatically
|
|
22
|
-
- 📝 Simple markdown configuration files with YAML frontmatter
|
|
23
|
-
- 🔍 Regex pattern matching for powerful rules
|
|
24
|
-
- 🚀 No coding required - just describe the behavior
|
|
25
|
-
- 🔄 Easy enable/disable without restarting
|
|
26
|
-
|
|
27
|
-
## Quick Start
|
|
28
|
-
|
|
29
|
-
### 1. Create Your First Rule
|
|
30
|
-
|
|
31
|
-
```bash
|
|
32
|
-
/hookify Warn me when I use rm -rf commands
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
This analyzes your request and creates `.claude/hookify.warn-rm.local.md`.
|
|
36
|
-
|
|
37
|
-
### 2. Test It Immediately
|
|
38
|
-
|
|
39
|
-
**No restart needed!** Rules take effect on the very next tool use.
|
|
40
|
-
|
|
41
|
-
Ask Claude to run a command that should trigger the rule:
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
Run rm -rf /tmp/test
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
You should see the warning message immediately!
|
|
48
|
-
|
|
49
|
-
## Usage
|
|
50
|
-
|
|
51
|
-
### Main Command: /hookify
|
|
52
|
-
|
|
53
|
-
**With arguments:**
|
|
54
|
-
|
|
55
|
-
```
|
|
56
|
-
/hookify Don't use console.log in TypeScript files
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Creates a rule from your explicit instructions.
|
|
60
|
-
|
|
61
|
-
**Without arguments:**
|
|
62
|
-
|
|
63
|
-
```
|
|
64
|
-
/hookify
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
Analyzes recent conversation to find behaviors you've corrected or been frustrated by.
|
|
68
|
-
|
|
69
|
-
### Helper Commands
|
|
70
|
-
|
|
71
|
-
**List all rules:**
|
|
72
|
-
|
|
73
|
-
```
|
|
74
|
-
/hookify:list
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
**Configure rules interactively:**
|
|
78
|
-
|
|
79
|
-
```
|
|
80
|
-
/hookify:configure
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
Enable/disable existing rules through an interactive interface.
|
|
84
|
-
|
|
85
|
-
**Get help:**
|
|
86
|
-
|
|
87
|
-
```
|
|
88
|
-
/hookify:help
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
## Rule Configuration Format
|
|
92
|
-
|
|
93
|
-
### Simple Rule (Single Pattern)
|
|
94
|
-
|
|
95
|
-
`.claude/hookify.dangerous-rm.local.md`:
|
|
96
|
-
|
|
97
|
-
```markdown
|
|
98
|
-
---
|
|
99
|
-
name: block-dangerous-rm
|
|
100
|
-
enabled: true
|
|
101
|
-
event: bash
|
|
102
|
-
pattern: rm\s+-rf
|
|
103
|
-
action: block
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
⚠️ **Dangerous rm command detected!**
|
|
107
|
-
|
|
108
|
-
This command could delete important files. Please:
|
|
109
|
-
|
|
110
|
-
- Verify the path is correct
|
|
111
|
-
- Consider using a safer approach
|
|
112
|
-
- Make sure you have backups
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
**Action field:**
|
|
116
|
-
|
|
117
|
-
- `warn`: Shows warning but allows operation (default)
|
|
118
|
-
- `block`: Prevents operation from executing (PreToolUse) or stops session (Stop events)
|
|
119
|
-
|
|
120
|
-
### Advanced Rule (Multiple Conditions)
|
|
121
|
-
|
|
122
|
-
`.claude/hookify.sensitive-files.local.md`:
|
|
123
|
-
|
|
124
|
-
```markdown
|
|
125
|
-
---
|
|
126
|
-
name: warn-sensitive-files
|
|
127
|
-
enabled: true
|
|
128
|
-
event: file
|
|
129
|
-
action: warn
|
|
130
|
-
conditions:
|
|
131
|
-
- field: file_path
|
|
132
|
-
operator: regex_match
|
|
133
|
-
pattern: \.env$|credentials|secrets
|
|
134
|
-
- field: new_text
|
|
135
|
-
operator: contains
|
|
136
|
-
pattern: KEY
|
|
137
|
-
---
|
|
138
|
-
|
|
139
|
-
🔐 **Sensitive file edit detected!**
|
|
140
|
-
|
|
141
|
-
Ensure credentials are not hardcoded and file is in .gitignore.
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
**All conditions must match** for the rule to trigger.
|
|
145
|
-
|
|
146
|
-
## Event Types
|
|
147
|
-
|
|
148
|
-
- **`bash`**: Triggers on Bash tool commands
|
|
149
|
-
- **`file`**: Triggers on Edit, Write, MultiEdit tools
|
|
150
|
-
- **`stop`**: Triggers when Claude wants to stop (for completion checks)
|
|
151
|
-
- **`prompt`**: Triggers on user prompt submission
|
|
152
|
-
- **`all`**: Triggers on all events
|
|
153
|
-
|
|
154
|
-
## Pattern Syntax
|
|
155
|
-
|
|
156
|
-
Use Python regex syntax:
|
|
157
|
-
|
|
158
|
-
| Pattern | Matches | Example |
|
|
159
|
-
| ---------------- | -------------------- | ------------------- |
|
|
160
|
-
| `rm\s+-rf` | rm -rf | rm -rf /tmp |
|
|
161
|
-
| `console\.log\(` | console.log( | console.log("test") |
|
|
162
|
-
| `(eval\|exec)\(` | eval( or exec( | eval("code") |
|
|
163
|
-
| `\.env$` | files ending in .env | .env, .env.local |
|
|
164
|
-
| `chmod\s+777` | chmod 777 | chmod 777 file.txt |
|
|
165
|
-
|
|
166
|
-
**Tips:**
|
|
167
|
-
|
|
168
|
-
- Use `\s` for whitespace
|
|
169
|
-
- Escape special chars: `\.` for literal dot
|
|
170
|
-
- Use `|` for OR: `(foo|bar)`
|
|
171
|
-
- Use `.*` to match anything
|
|
172
|
-
- Set `action: block` for dangerous operations
|
|
173
|
-
- Set `action: warn` (or omit) for informational warnings
|
|
174
|
-
|
|
175
|
-
## Examples
|
|
176
|
-
|
|
177
|
-
### Example 1: Block Dangerous Commands
|
|
178
|
-
|
|
179
|
-
```markdown
|
|
180
|
-
---
|
|
181
|
-
name: block-destructive-ops
|
|
182
|
-
enabled: true
|
|
183
|
-
event: bash
|
|
184
|
-
pattern: rm\s+-rf|dd\s+if=|mkfs|format
|
|
185
|
-
action: block
|
|
186
|
-
---
|
|
187
|
-
|
|
188
|
-
🛑 **Destructive operation detected!**
|
|
189
|
-
|
|
190
|
-
This command can cause data loss. Operation blocked for safety.
|
|
191
|
-
Please verify the exact path and use a safer approach.
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
**This rule blocks the operation** - Claude will not be allowed to execute these commands.
|
|
195
|
-
|
|
196
|
-
### Example 2: Warn About Debug Code
|
|
197
|
-
|
|
198
|
-
```markdown
|
|
199
|
-
---
|
|
200
|
-
name: warn-debug-code
|
|
201
|
-
enabled: true
|
|
202
|
-
event: file
|
|
203
|
-
pattern: console\.log\(|debugger;|print\(
|
|
204
|
-
action: warn
|
|
205
|
-
---
|
|
206
|
-
|
|
207
|
-
🐛 **Debug code detected**
|
|
208
|
-
|
|
209
|
-
Remember to remove debugging statements before committing.
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
**This rule warns but allows** - Claude sees the message but can still proceed.
|
|
213
|
-
|
|
214
|
-
### Example 3: Require Tests Before Stopping
|
|
215
|
-
|
|
216
|
-
```markdown
|
|
217
|
-
---
|
|
218
|
-
name: require-tests-run
|
|
219
|
-
enabled: false
|
|
220
|
-
event: stop
|
|
221
|
-
action: block
|
|
222
|
-
conditions:
|
|
223
|
-
- field: transcript
|
|
224
|
-
operator: not_contains
|
|
225
|
-
pattern: npm test|pytest|cargo test
|
|
226
|
-
---
|
|
227
|
-
|
|
228
|
-
**Tests not detected in transcript!**
|
|
229
|
-
|
|
230
|
-
Before stopping, please run tests to verify your changes work correctly.
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
**This blocks Claude from stopping** if no test commands appear in the session transcript. Enable only when you want strict enforcement.
|
|
234
|
-
|
|
235
|
-
## Advanced Usage
|
|
236
|
-
|
|
237
|
-
### Multiple Conditions
|
|
238
|
-
|
|
239
|
-
Check multiple fields simultaneously:
|
|
240
|
-
|
|
241
|
-
```markdown
|
|
242
|
-
---
|
|
243
|
-
name: api-key-in-typescript
|
|
244
|
-
enabled: true
|
|
245
|
-
event: file
|
|
246
|
-
conditions:
|
|
247
|
-
- field: file_path
|
|
248
|
-
operator: regex_match
|
|
249
|
-
pattern: \.tsx?$
|
|
250
|
-
- field: new_text
|
|
251
|
-
operator: regex_match
|
|
252
|
-
pattern: (API_KEY|SECRET|TOKEN)\s*=\s*["']
|
|
253
|
-
---
|
|
254
|
-
|
|
255
|
-
🔐 **Hardcoded credential in TypeScript!**
|
|
256
|
-
|
|
257
|
-
Use environment variables instead of hardcoded values.
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
### Operators Reference
|
|
261
|
-
|
|
262
|
-
- `regex_match`: Pattern must match (most common)
|
|
263
|
-
- `contains`: String must contain pattern
|
|
264
|
-
- `equals`: Exact string match
|
|
265
|
-
- `not_contains`: String must NOT contain pattern
|
|
266
|
-
- `starts_with`: String starts with pattern
|
|
267
|
-
- `ends_with`: String ends with pattern
|
|
268
|
-
|
|
269
|
-
### Field Reference
|
|
270
|
-
|
|
271
|
-
**For bash events:**
|
|
272
|
-
|
|
273
|
-
- `command`: The bash command string
|
|
274
|
-
|
|
275
|
-
**For file events:**
|
|
276
|
-
|
|
277
|
-
- `file_path`: Path to file being edited
|
|
278
|
-
- `new_text`: New content being added (Edit, Write)
|
|
279
|
-
- `old_text`: Old content being replaced (Edit only)
|
|
280
|
-
- `content`: File content (Write only)
|
|
281
|
-
|
|
282
|
-
**For prompt events:**
|
|
283
|
-
|
|
284
|
-
- `user_prompt`: The user's submitted prompt text
|
|
285
|
-
|
|
286
|
-
**For stop events:**
|
|
287
|
-
|
|
288
|
-
- Use general matching on session state
|
|
289
|
-
|
|
290
|
-
## Management
|
|
291
|
-
|
|
292
|
-
### Enable/Disable Rules
|
|
293
|
-
|
|
294
|
-
**Temporarily disable:**
|
|
295
|
-
Edit the `.local.md` file and set `enabled: false`
|
|
296
|
-
|
|
297
|
-
**Re-enable:**
|
|
298
|
-
Set `enabled: true`
|
|
299
|
-
|
|
300
|
-
**Or use interactive tool:**
|
|
301
|
-
|
|
302
|
-
```
|
|
303
|
-
/hookify:configure
|
|
304
|
-
```
|
|
305
|
-
|
|
306
|
-
### Delete Rules
|
|
307
|
-
|
|
308
|
-
Simply delete the `.local.md` file:
|
|
309
|
-
|
|
310
|
-
```bash
|
|
311
|
-
rm .claude/hookify.my-rule.local.md
|
|
312
|
-
```
|
|
313
|
-
|
|
314
|
-
### View All Rules
|
|
315
|
-
|
|
316
|
-
```
|
|
317
|
-
/hookify:list
|
|
318
|
-
```
|
|
319
|
-
|
|
320
|
-
## Installation
|
|
321
|
-
|
|
322
|
-
This plugin is part of the Claude Code Marketplace. It should be auto-discovered when the marketplace is installed.
|
|
323
|
-
|
|
324
|
-
**Manual testing:**
|
|
325
|
-
|
|
326
|
-
```bash
|
|
327
|
-
cc --plugin-dir /path/to/hookify
|
|
328
|
-
```
|
|
329
|
-
|
|
330
|
-
## Requirements
|
|
331
|
-
|
|
332
|
-
- Python 3.7+
|
|
333
|
-
- No external dependencies (uses stdlib only)
|
|
334
|
-
|
|
335
|
-
## Troubleshooting
|
|
336
|
-
|
|
337
|
-
**Rule not triggering:**
|
|
338
|
-
|
|
339
|
-
1. Check rule file exists in `.claude/` directory (in project root, not plugin directory)
|
|
340
|
-
2. Verify `enabled: true` in frontmatter
|
|
341
|
-
3. Test regex pattern separately
|
|
342
|
-
4. Rules should work immediately - no restart needed
|
|
343
|
-
5. Try `/hookify:list` to see if rule is loaded
|
|
344
|
-
|
|
345
|
-
**Import errors:**
|
|
346
|
-
|
|
347
|
-
- Ensure Python 3 is available: `python3 --version`
|
|
348
|
-
- Check hookify plugin is installed
|
|
349
|
-
|
|
350
|
-
**Pattern not matching:**
|
|
351
|
-
|
|
352
|
-
- Test regex: `python3 -c "import re; print(re.search(r'pattern', 'text'))"`
|
|
353
|
-
- Use unquoted patterns in YAML to avoid escaping issues
|
|
354
|
-
- Start simple, then add complexity
|
|
355
|
-
|
|
356
|
-
**Hook seems slow:**
|
|
357
|
-
|
|
358
|
-
- Keep patterns simple (avoid complex regex)
|
|
359
|
-
- Use specific event types (bash, file) instead of "all"
|
|
360
|
-
- Limit number of active rules
|
|
361
|
-
|
|
362
|
-
## Contributing
|
|
363
|
-
|
|
364
|
-
Found a useful rule pattern? Consider sharing example files via PR!
|
|
365
|
-
|
|
366
|
-
## Future Enhancements
|
|
367
|
-
|
|
368
|
-
- Severity levels (error/warning/info distinctions)
|
|
369
|
-
- Rule templates library
|
|
370
|
-
- Interactive pattern builder
|
|
371
|
-
- Hook testing utilities
|
|
372
|
-
- JSON format support (in addition to markdown)
|
|
373
|
-
|
|
374
|
-
## License
|
|
375
|
-
|
|
376
|
-
MIT License
|