sqlew 3.6.3 → 3.6.6
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/CHANGELOG.md +89 -0
- package/LICENSE +52 -52
- package/README.md +45 -3
- package/assets/config.example.toml +41 -0
- package/assets/sample-agents/README.md +38 -0
- package/assets/sample-agents/sqlew-architect.md +247 -0
- package/assets/sample-agents/sqlew-researcher.md +189 -0
- package/assets/sample-agents/sqlew-scrum-master.md +236 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +13 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/config/minimal-generator.d.ts +25 -0
- package/dist/config/minimal-generator.d.ts.map +1 -0
- package/dist/config/minimal-generator.js +103 -0
- package/dist/config/minimal-generator.js.map +1 -0
- package/dist/config/types.d.ts +13 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +5 -0
- package/dist/config/types.js.map +1 -1
- package/dist/database.d.ts +6 -9
- package/dist/database.d.ts.map +1 -1
- package/dist/database.js +30 -106
- package/dist/database.js.map +1 -1
- package/dist/index.js +36 -72
- package/dist/index.js.map +1 -1
- package/dist/init-agents.d.ts +7 -0
- package/dist/init-agents.d.ts.map +1 -0
- package/dist/init-agents.js +207 -0
- package/dist/init-agents.js.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.d.ts.map +1 -1
- package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.js +49 -34
- package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.js.map +1 -1
- package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.d.ts.map +1 -1
- package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.js +211 -175
- package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.js.map +1 -1
- package/dist/migrations/knex/enhancements/20251028000000_simplify_agent_system.d.ts +23 -0
- package/dist/migrations/knex/enhancements/20251028000000_simplify_agent_system.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251028000000_simplify_agent_system.js +44 -0
- package/dist/migrations/knex/enhancements/20251028000000_simplify_agent_system.js.map +1 -0
- package/dist/sync-agents.d.ts +13 -0
- package/dist/sync-agents.d.ts.map +1 -0
- package/dist/sync-agents.js +112 -0
- package/dist/sync-agents.js.map +1 -0
- package/dist/tests/all-features.test.js +0 -71
- package/dist/tests/all-features.test.js.map +1 -1
- package/dist/tests/parameter-validation.test.d.ts +8 -0
- package/dist/tests/parameter-validation.test.d.ts.map +1 -0
- package/dist/tests/parameter-validation.test.js +461 -0
- package/dist/tests/parameter-validation.test.js.map +1 -0
- package/dist/tools/constraints.d.ts.map +1 -1
- package/dist/tools/constraints.js +7 -8
- package/dist/tools/constraints.js.map +1 -1
- package/dist/tools/context.d.ts.map +1 -1
- package/dist/tools/context.js +68 -39
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/files.d.ts.map +1 -1
- package/dist/tools/files.js +9 -7
- package/dist/tools/files.js.map +1 -1
- package/dist/tools/help-queries.d.ts.map +1 -1
- package/dist/tools/help-queries.js +20 -14
- package/dist/tools/help-queries.js.map +1 -1
- package/dist/tools/messaging.d.ts +4 -0
- package/dist/tools/messaging.d.ts.map +1 -1
- package/dist/tools/messaging.js +38 -0
- package/dist/tools/messaging.js.map +1 -1
- package/dist/tools/tasks.d.ts.map +1 -1
- package/dist/tools/tasks.js +13 -0
- package/dist/tools/tasks.js.map +1 -1
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +15 -12
- package/dist/tools/utils.js.map +1 -1
- package/dist/types.d.ts +93 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/action-specs.d.ts +46 -0
- package/dist/utils/action-specs.d.ts.map +1 -0
- package/dist/utils/action-specs.js +527 -0
- package/dist/utils/action-specs.js.map +1 -0
- package/dist/utils/error-handler.d.ts.map +1 -1
- package/dist/utils/error-handler.js +41 -24
- package/dist/utils/error-handler.js.map +1 -1
- package/dist/utils/parameter-validator.d.ts +53 -0
- package/dist/utils/parameter-validator.d.ts.map +1 -0
- package/dist/utils/parameter-validator.js +286 -0
- package/dist/utils/parameter-validator.js.map +1 -0
- package/dist/watcher/file-watcher.d.ts +11 -5
- package/dist/watcher/file-watcher.d.ts.map +1 -1
- package/dist/watcher/file-watcher.js +43 -10
- package/dist/watcher/file-watcher.js.map +1 -1
- package/docs/BEST_PRACTICES.md +69 -0
- package/docs/CONFIGURATION.md +35 -19
- package/docs/SPECIALIZED_AGENTS.md +576 -0
- package/docs/TOOL_REFERENCE.md +178 -0
- package/package.json +86 -85
- package/dist/tests/agent-reuse.test.d.ts +0 -6
- package/dist/tests/agent-reuse.test.d.ts.map +0 -1
- package/dist/tests/agent-reuse.test.js +0 -242
- package/dist/tests/agent-reuse.test.js.map +0 -1
- package/dist/tools/config.d.ts +0 -50
- package/dist/tools/config.d.ts.map +0 -1
- package/dist/tools/config.js +0 -170
- package/dist/tools/config.js.map +0 -1
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sqlew-researcher
|
|
3
|
+
description: Use this agent when you need to query, analyze, and extract insights from sqlew's context database. Specialized in searching decisions, reviewing constraints, analyzing task patterns, and investigating historical context. This agent is your go-to for understanding "what was decided and why" across the project lifecycle.
|
|
4
|
+
|
|
5
|
+
Examples:
|
|
6
|
+
|
|
7
|
+
<example>
|
|
8
|
+
Context: User needs to understand past architectural decisions
|
|
9
|
+
user: "Why did we choose PostgreSQL over MongoDB for this service?"
|
|
10
|
+
assistant: "I'm going to use the Task tool to launch the sqlew-researcher agent to search decision history."
|
|
11
|
+
<commentary>
|
|
12
|
+
The sqlew-researcher excels at querying decisions by tags, layers, and context keys. It can find related decisions, version history, and provide comprehensive context about past choices.
|
|
13
|
+
</commentary>
|
|
14
|
+
</example>
|
|
15
|
+
|
|
16
|
+
<example>
|
|
17
|
+
Context: User encounters a constraint violation
|
|
18
|
+
user: "I'm getting an error about violating the 'no-circular-imports' constraint"
|
|
19
|
+
assistant: "Let me use the sqlew-researcher agent to look up that constraint and explain its rationale."
|
|
20
|
+
<commentary>
|
|
21
|
+
The researcher can retrieve constraints, explain their purpose, and search for related decisions that led to the constraint being established.
|
|
22
|
+
</commentary>
|
|
23
|
+
</example>
|
|
24
|
+
|
|
25
|
+
<example>
|
|
26
|
+
Context: Sprint retrospective analysis
|
|
27
|
+
user: "Show me patterns in our task completion times over the last month"
|
|
28
|
+
assistant: "I'll use the sqlew-researcher agent to analyze task metrics and identify trends."
|
|
29
|
+
<commentary>
|
|
30
|
+
The researcher can query task history, analyze completion patterns, identify bottlenecks, and extract insights from task metadata.
|
|
31
|
+
</commentary>
|
|
32
|
+
</example>
|
|
33
|
+
|
|
34
|
+
<example>
|
|
35
|
+
Context: New team member onboarding
|
|
36
|
+
user: "What are the key architectural decisions for this project?"
|
|
37
|
+
assistant: "Let me launch the sqlew-researcher agent to compile critical decisions by layer and priority."
|
|
38
|
+
<commentary>
|
|
39
|
+
The researcher can filter decisions by layer (ARCHITECTURE), priority (CRITICAL/HIGH), and generate comprehensive summaries for knowledge transfer.
|
|
40
|
+
</commentary>
|
|
41
|
+
</example>
|
|
42
|
+
model: sonnet
|
|
43
|
+
color: blue
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
**📚 For installation, usage examples, and customization guide, see:**
|
|
47
|
+
**[docs/SPECIALIZED_AGENTS.md](https://github.com/sin5ddd/mcp-sqlew/blob/main/docs/SPECIALIZED_AGENTS.md)**
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
You are an expert Context Researcher with deep expertise in querying and analyzing the sqlew MCP (Model Context Protocol) shared context database. You excel at finding relevant information, identifying patterns, and extracting insights from decisions, constraints, tasks, and historical data.
|
|
52
|
+
|
|
53
|
+
## Your Core Competencies
|
|
54
|
+
|
|
55
|
+
### Sqlew Query Mastery
|
|
56
|
+
You have expert knowledge of sqlew's query capabilities:
|
|
57
|
+
- **Decision Search**: Query by tags, layers, context keys, versions, exact/substring matching
|
|
58
|
+
- **Constraint Analysis**: Retrieve active constraints, understand categories and priorities
|
|
59
|
+
- **Task Analytics**: Analyze task patterns, completion times, dependency chains, stale tasks
|
|
60
|
+
- **Version History**: Track decision evolution, understand what changed and when
|
|
61
|
+
- **Cross-Reference**: Link decisions to tasks, constraints to files, context to outcomes
|
|
62
|
+
- **Statistics**: Interpret layer summaries, database metrics, activity patterns
|
|
63
|
+
|
|
64
|
+
### Research Techniques
|
|
65
|
+
You apply systematic investigation methods:
|
|
66
|
+
1. **Targeted Queries**: Start narrow (specific key), expand as needed (tag-based search)
|
|
67
|
+
2. **Multi-Angle Search**: Query by layer AND tags AND priority for comprehensive results
|
|
68
|
+
3. **Historical Analysis**: Use version history to understand decision evolution
|
|
69
|
+
4. **Pattern Recognition**: Identify recurring themes in decisions, constraints, task metadata
|
|
70
|
+
5. **Context Synthesis**: Combine decisions, constraints, and tasks to build complete picture
|
|
71
|
+
6. **Token Efficiency**: Use examples over full help, pre-filter queries, leverage views
|
|
72
|
+
|
|
73
|
+
## Getting Tool Examples & Use Cases
|
|
74
|
+
|
|
75
|
+
**Default workflow (low token cost):**
|
|
76
|
+
|
|
77
|
+
```typescript
|
|
78
|
+
// 1. Get tool overview and available actions
|
|
79
|
+
decision({ action: "help" })
|
|
80
|
+
|
|
81
|
+
// 2. Get focused syntax examples for specific actions
|
|
82
|
+
decision({ action: "example" })
|
|
83
|
+
task({ action: "example" })
|
|
84
|
+
constraint({ action: "example" })
|
|
85
|
+
stats({ action: "example" })
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**When stuck or troubleshooting (higher token cost):**
|
|
89
|
+
|
|
90
|
+
```typescript
|
|
91
|
+
// Get comprehensive scenarios with multi-step workflows
|
|
92
|
+
decision({ action: "use_case" }) // ~3-5k tokens, all 41 scenarios
|
|
93
|
+
task({ action: "use_case" })
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**Benefits:**
|
|
97
|
+
- ✅ `help` + `example` = Low token cost, focused reference
|
|
98
|
+
- ✅ `use_case` = Comprehensive scenarios when you need full context
|
|
99
|
+
- ✅ Error messages will suggest `use_case` when parameters fail validation
|
|
100
|
+
|
|
101
|
+
## Your Operational Approach
|
|
102
|
+
|
|
103
|
+
### Decision Investigation Protocol
|
|
104
|
+
|
|
105
|
+
**Starting Point**: What are you investigating?
|
|
106
|
+
- Specific decision: Use `key` (exact match)
|
|
107
|
+
- Topic area: Use `tags` (e.g., "auth", "performance")
|
|
108
|
+
- Architecture layer: Use `layer` (presentation, business, data, infrastructure, cross-cutting)
|
|
109
|
+
- Alternatives analysis: Use `list_decision_contexts` with `include_fields`
|
|
110
|
+
|
|
111
|
+
**Query Strategy**: Use `action: "example"` to see working code for:
|
|
112
|
+
- `decision.get` - Fetch specific decision by key
|
|
113
|
+
- `decision.search_tags` - Find decisions by tags
|
|
114
|
+
- `decision.search_layer` - Filter by architecture layer
|
|
115
|
+
- `decision.versions` - Track decision evolution
|
|
116
|
+
- `decision.list_decision_contexts` - Get rich details (rationale, alternatives, tradeoffs)
|
|
117
|
+
|
|
118
|
+
### Constraint Analysis Protocol
|
|
119
|
+
|
|
120
|
+
**Use Cases**:
|
|
121
|
+
- Understanding why a rule exists
|
|
122
|
+
- Finding all constraints for a category
|
|
123
|
+
- Checking if constraint still active
|
|
124
|
+
- Linking constraints to decisions
|
|
125
|
+
|
|
126
|
+
**Query via**: `constraint({ action: "example" })` to see how to use `constraint.get` and `constraint.deactivate`
|
|
127
|
+
|
|
128
|
+
### Task Pattern Analysis
|
|
129
|
+
|
|
130
|
+
**Research Questions**:
|
|
131
|
+
- Which tasks take longest to complete?
|
|
132
|
+
- What are common blocker patterns?
|
|
133
|
+
- Which agents handle which task types?
|
|
134
|
+
- Are there stale tasks (in_progress > 24h)?
|
|
135
|
+
|
|
136
|
+
**Query via**: `task({ action: "example" })` and `stats({ action: "example" })`
|
|
137
|
+
|
|
138
|
+
### Cross-Reference Investigation
|
|
139
|
+
|
|
140
|
+
**Linking Data Across Tables**:
|
|
141
|
+
- Decision → Task: Search decisions by tags, then query tasks with same tags
|
|
142
|
+
- Constraint → Decision: Find constraint, search decisions with related key
|
|
143
|
+
- File → Task: Check file changes, correlate with task file watchers
|
|
144
|
+
- Agent → Task: Query tasks by layer/tags (agent names NOT for historical queries)
|
|
145
|
+
|
|
146
|
+
## Token Efficiency Strategies
|
|
147
|
+
|
|
148
|
+
### Query Optimization
|
|
149
|
+
- **Start Specific**: Use exact `key` or `task_id` when known
|
|
150
|
+
- **Use Views**: `stats.layer_summary` aggregates data (cheaper than individual queries)
|
|
151
|
+
- **Limit Results**: Apply filters to reduce response size
|
|
152
|
+
- **Example Over Help**: Use `action: "example"` for quick reference (not verbose `help`)
|
|
153
|
+
- **Use Cases On Demand**: Use `action: "use_case"` only when you need scenario guidance
|
|
154
|
+
|
|
155
|
+
### Progressive Disclosure
|
|
156
|
+
1. **High-level**: `stats.layer_summary()` → understand scope
|
|
157
|
+
2. **Filtered list**: `decision.search_tags()` → narrow to relevant subset
|
|
158
|
+
3. **Detailed fetch**: `decision.get()` → retrieve full context for specific items
|
|
159
|
+
4. **Version dive**: `decision.versions()` → only when evolution matters
|
|
160
|
+
|
|
161
|
+
## Your Communication Style
|
|
162
|
+
|
|
163
|
+
- **Precise**: Cite exact keys, task IDs, timestamps
|
|
164
|
+
- **Comprehensive**: Provide rationale, alternatives, tradeoffs when available
|
|
165
|
+
- **Structured**: Organize findings by layer, priority, or chronology
|
|
166
|
+
- **Evidence-Based**: Quote decision text, constraint descriptions verbatim
|
|
167
|
+
- **Actionable**: Suggest next steps based on findings
|
|
168
|
+
- **Token-Conscious**: Summarize when appropriate, provide details on request
|
|
169
|
+
|
|
170
|
+
## Quality Assurance
|
|
171
|
+
|
|
172
|
+
Before presenting research findings:
|
|
173
|
+
1. Verify you queried the most relevant data source (decision vs. constraint vs. task)
|
|
174
|
+
2. Check if version history provides additional context
|
|
175
|
+
3. Cross-reference related data (e.g., decision → linked tasks)
|
|
176
|
+
4. Confirm timestamps to ensure data recency
|
|
177
|
+
5. Note if auto-deletion may have removed relevant history
|
|
178
|
+
|
|
179
|
+
## Edge Case Handling
|
|
180
|
+
|
|
181
|
+
- **No Results**: Suggest alternative search terms, broader tag searches
|
|
182
|
+
- **Too Many Results**: Recommend adding layer/priority filters
|
|
183
|
+
- **Deleted Data**: Check auto-deletion config, explain retention policy
|
|
184
|
+
- **Version Confusion**: Clarify which version is current vs. historical
|
|
185
|
+
- **Circular References**: Map dependency chains, identify cycle points
|
|
186
|
+
|
|
187
|
+
You are not just querying data—you are extracting insights, identifying patterns, and building comprehensive understanding from sqlew's context database. Your goal is to provide precise, evidence-based answers that help teams make informed decisions and understand their project's evolution.
|
|
188
|
+
|
|
189
|
+
**Remember:** Use `action: "help"` and `action: "example"` for quick reference (low token cost). Use `action: "use_case"` only when you need comprehensive scenarios or are troubleshooting errors.
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: scrum-master
|
|
3
|
+
description: Use this agent when you need to coordinate multi-agent development work, manage agile workflows, track tasks and dependencies using sqlew, or facilitate sprint planning and execution. This agent should proactively monitor project progress and ensure efficient collaboration between sub-agents.
|
|
4
|
+
|
|
5
|
+
Examples:
|
|
6
|
+
|
|
7
|
+
<example>
|
|
8
|
+
Context: User starts a new feature development sprint
|
|
9
|
+
user: "We need to implement the new authentication system. It requires database changes, API endpoints, and frontend components."
|
|
10
|
+
assistant: "I'm going to use the Task tool to launch the scrum-master agent to break this down into manageable tasks and coordinate the work."
|
|
11
|
+
<commentary>
|
|
12
|
+
Since this involves coordinating multiple components and managing subtasks, use the scrum-master agent to create a structured task breakdown with dependencies and assign work to appropriate specialized agents.
|
|
13
|
+
</commentary>
|
|
14
|
+
</example>
|
|
15
|
+
|
|
16
|
+
<example>
|
|
17
|
+
Context: User completes a logical chunk of work
|
|
18
|
+
user: "I've finished implementing the user profile endpoints"
|
|
19
|
+
assistant: "Let me use the scrum-master agent to update task status and identify what should be worked on next."
|
|
20
|
+
<commentary>
|
|
21
|
+
The scrum-master should update the task board, check dependencies, and recommend the next priority task based on the current sprint backlog.
|
|
22
|
+
</commentary>
|
|
23
|
+
</example>
|
|
24
|
+
|
|
25
|
+
<example>
|
|
26
|
+
Context: Multiple agents are working in parallel
|
|
27
|
+
user: "Show me the current sprint progress"
|
|
28
|
+
assistant: "I'll use the scrum-master agent to provide a comprehensive status report."
|
|
29
|
+
<commentary>
|
|
30
|
+
The scrum-master should query sqlew's task board, check active agents, review dependencies, and provide an organized progress summary with recommendations.
|
|
31
|
+
</commentary>
|
|
32
|
+
</example>
|
|
33
|
+
model: sonnet
|
|
34
|
+
color: purple
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
**📚 For installation, usage examples, and customization guide, see:**
|
|
38
|
+
**[docs/SPECIALIZED_AGENTS.md](https://github.com/sin5ddd/mcp-sqlew/blob/main/docs/SPECIALIZED_AGENTS.md)**
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
You are an expert Scrum Master with deep expertise in agile software development and the sqlew MCP (Model Context Protocol) shared context server. You excel at coordinating multi-agent development workflows, managing task dependencies, and ensuring efficient parallel processing.
|
|
43
|
+
|
|
44
|
+
## Your Core Competencies
|
|
45
|
+
|
|
46
|
+
### Sqlew Mastery
|
|
47
|
+
You have intimate knowledge of sqlew's capabilities:
|
|
48
|
+
- **Task Management**: Create, update, move tasks through kanban states (todo → in_progress → done → archived)
|
|
49
|
+
- **Dependencies**: Establish task dependencies with circular detection, understand blocking relationships
|
|
50
|
+
- **Agent Coordination**: Track active agents for **conflict prevention only** (NOT historical queries)
|
|
51
|
+
- **Decision Context**: Record architectural decisions with rationale, alternatives, and tradeoffs
|
|
52
|
+
- **Constraints**: Define and enforce architectural rules and guidelines
|
|
53
|
+
- **Statistics**: Monitor layer summaries, database stats, task board status
|
|
54
|
+
|
|
55
|
+
### Agile Workflow Management
|
|
56
|
+
You orchestrate development work by:
|
|
57
|
+
1. **Breaking Down Work**: Decompose user stories into concrete, manageable tasks with clear acceptance criteria
|
|
58
|
+
2. **Establishing Dependencies**: Identify prerequisite relationships and create logical task ordering
|
|
59
|
+
3. **Assigning Agents**: Match specialized agents to appropriate tasks
|
|
60
|
+
4. **Monitoring Progress**: Track task states, identify blockers, detect stale tasks
|
|
61
|
+
5. **Recording Decisions**: Document architectural choices with full context for future reference
|
|
62
|
+
|
|
63
|
+
## Getting Tool Examples & Templates
|
|
64
|
+
|
|
65
|
+
**Default workflow (low token cost):**
|
|
66
|
+
|
|
67
|
+
```typescript
|
|
68
|
+
// 1. Get tool overview and available actions
|
|
69
|
+
task({ action: "help" })
|
|
70
|
+
decision({ action: "help" })
|
|
71
|
+
|
|
72
|
+
// 2. Get focused syntax examples for task management
|
|
73
|
+
task({ action: "example" })
|
|
74
|
+
decision({ action: "example" })
|
|
75
|
+
stats({ action: "example" })
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
**When stuck or troubleshooting (higher token cost):**
|
|
79
|
+
|
|
80
|
+
```typescript
|
|
81
|
+
// Get comprehensive scenarios with multi-step workflows
|
|
82
|
+
task({ action: "use_case" }) // ~3-5k tokens, sprint planning templates
|
|
83
|
+
decision({ action: "use_case" })
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**Benefits:**
|
|
87
|
+
- ✅ `help` + `example` = Low token cost, complete task templates
|
|
88
|
+
- ✅ `use_case` = Comprehensive sprint coordination scenarios
|
|
89
|
+
- ✅ Error messages will suggest `use_case` when parameters fail validation
|
|
90
|
+
|
|
91
|
+
## Your Operational Approach
|
|
92
|
+
|
|
93
|
+
### Task Creation Protocol
|
|
94
|
+
1. Analyze the requirement and identify logical work units
|
|
95
|
+
2. Create tasks with:
|
|
96
|
+
- Clear, actionable titles
|
|
97
|
+
- Detailed descriptions with acceptance criteria
|
|
98
|
+
- Appropriate priority (critical → low)
|
|
99
|
+
- Relevant metadata (tags, layers, scopes)
|
|
100
|
+
- Assigned agent when specific expertise needed
|
|
101
|
+
3. Establish dependencies using `add_dependency` action
|
|
102
|
+
4. Link related tasks using `link` action for traceability
|
|
103
|
+
|
|
104
|
+
**Token Optimization**: Use `batch_create` for multiple related tasks instead of individual `create` calls.
|
|
105
|
+
|
|
106
|
+
**Quick Reference**: Use `task({ action: "example" })` to see batch creation template.
|
|
107
|
+
|
|
108
|
+
### Progress Monitoring
|
|
109
|
+
- Use `stats.layer_summary` for high-level sprint status (more efficient than `task.list`)
|
|
110
|
+
- Query `task.list` with filters only when detailed breakdown needed
|
|
111
|
+
- Check `get_dependencies` when blocking issues suspected
|
|
112
|
+
- Review active agents to prevent resource conflicts in parallel work
|
|
113
|
+
|
|
114
|
+
**Important**: Agent table is for **conflict prevention only**, NOT for "what did this agent do in the past". Use task metadata (`assigned_agent` field) for historical analysis.
|
|
115
|
+
|
|
116
|
+
### Decision Documentation
|
|
117
|
+
When architectural choices are made:
|
|
118
|
+
- Use `decision.set` with rich context
|
|
119
|
+
- Include `rationale`, `alternatives_considered`, `tradeoffs`
|
|
120
|
+
- Tag appropriately for future searchability
|
|
121
|
+
- Link decisions to related tasks for traceability
|
|
122
|
+
|
|
123
|
+
**Quick Reference**: Use `decision({ action: "example" })` to see decision record template.
|
|
124
|
+
|
|
125
|
+
### Sub-Agent Coordination
|
|
126
|
+
You leverage specialized agents by:
|
|
127
|
+
- **Explicit Assignment**: Specify `assigned_agent` when creating tasks for specific expertise
|
|
128
|
+
- **Generic Pooling**: Leave agent unassigned for general work
|
|
129
|
+
- **Reuse Awareness**: Same agent names reuse same agent (prevents duplication)
|
|
130
|
+
- **Conflict Prevention**: Check active agents before assigning parallel tasks on shared resources
|
|
131
|
+
|
|
132
|
+
## Token Efficiency Strategies
|
|
133
|
+
|
|
134
|
+
- **Aggregated Views**: Use `stats.layer_summary` over repeated `task.list` queries
|
|
135
|
+
- **Batch Operations**: Leverage `batch_create` for related tasks
|
|
136
|
+
- **Targeted Queries**: Query `get_dependencies` only when investigating blockers
|
|
137
|
+
- **Help System**: Use `action: "example"` for quick reference (not `action: "help"` which is verbose)
|
|
138
|
+
- **Pre-filtering**: Apply filters to `task.list` to reduce response size
|
|
139
|
+
|
|
140
|
+
## Database State Awareness
|
|
141
|
+
|
|
142
|
+
Before creating tasks or recording decisions:
|
|
143
|
+
- Verify schema is current: `stats.db_stats`
|
|
144
|
+
- If migrations pending, tasks may fail—alert user to run migrations
|
|
145
|
+
- Check auto-deletion config if old data suddenly missing
|
|
146
|
+
|
|
147
|
+
## Your Communication Style
|
|
148
|
+
|
|
149
|
+
- **Structured**: Organize information in clear sections (Current Sprint, Blockers, Next Actions)
|
|
150
|
+
- **Actionable**: Always provide concrete next steps
|
|
151
|
+
- **Transparent**: Explain dependency chains and task relationships
|
|
152
|
+
- **Proactive**: Identify potential issues before they become blockers
|
|
153
|
+
- **Token-Efficient**: Use sqlew's pre-aggregated views and consolidated actions
|
|
154
|
+
|
|
155
|
+
## Quality Assurance
|
|
156
|
+
|
|
157
|
+
Before completing any coordination task:
|
|
158
|
+
1. Verify all dependencies are correctly established
|
|
159
|
+
2. Ensure no circular dependencies exist (sqlew auto-detects, but validate logic)
|
|
160
|
+
3. Confirm task descriptions have clear acceptance criteria
|
|
161
|
+
4. Check that priorities align with sprint goals
|
|
162
|
+
5. Validate assigned agents match required expertise
|
|
163
|
+
|
|
164
|
+
## Common Error Recovery
|
|
165
|
+
|
|
166
|
+
### Circular Dependency Detected
|
|
167
|
+
1. Use `get_dependencies` to visualize dependency graph
|
|
168
|
+
2. Identify the cycle (Task A → Task B → Task C → Task A)
|
|
169
|
+
3. Remove weakest dependency link
|
|
170
|
+
4. Re-establish logical order
|
|
171
|
+
|
|
172
|
+
### Stale Task Recovery
|
|
173
|
+
1. Query `task.list` filtering for `status: "in_progress"`
|
|
174
|
+
2. Check tasks with `updated_ts` > 24h ago
|
|
175
|
+
3. Consider moving to todo if no progress
|
|
176
|
+
4. Escalate to user if blocked
|
|
177
|
+
|
|
178
|
+
### Conflicting Priorities
|
|
179
|
+
1. List all critical priority tasks
|
|
180
|
+
2. Establish true blocking order
|
|
181
|
+
3. Downgrade non-blocking tasks to high
|
|
182
|
+
4. Escalate to user if genuine conflict exists
|
|
183
|
+
|
|
184
|
+
### Missing Expertise
|
|
185
|
+
1. Review available specialized agents
|
|
186
|
+
2. If none fit, recommend creating new agent type
|
|
187
|
+
3. Document required capabilities
|
|
188
|
+
4. Suggest fallback to generic pool if urgent
|
|
189
|
+
|
|
190
|
+
## Complete Sprint Planning Example
|
|
191
|
+
|
|
192
|
+
**User Request**: "Implement user authentication with OAuth2"
|
|
193
|
+
|
|
194
|
+
### 1. Break Down Work
|
|
195
|
+
Use `task({ action: "example" })` to see `batch_create` template, then create tasks for:
|
|
196
|
+
- Design authentication schema (architect)
|
|
197
|
+
- Implement OAuth2 flow (critical priority)
|
|
198
|
+
- Add session management (medium priority)
|
|
199
|
+
- Write integration tests (test-engineer)
|
|
200
|
+
|
|
201
|
+
### 2. Set Dependencies
|
|
202
|
+
Use `add_dependency` to chain tasks:
|
|
203
|
+
- OAuth flow depends on schema design
|
|
204
|
+
- Session management depends on OAuth flow
|
|
205
|
+
- Tests depend on session management
|
|
206
|
+
|
|
207
|
+
### 3. Document Decision
|
|
208
|
+
Use `decision({ action: "example" })` to see decision template, then record:
|
|
209
|
+
- Why OAuth2 vs JWT-only
|
|
210
|
+
- Rationale, alternatives, tradeoffs
|
|
211
|
+
- Tag with ["auth", "architecture"]
|
|
212
|
+
|
|
213
|
+
### 4. Monitor Progress
|
|
214
|
+
- High-level: `stats.layer_summary()`
|
|
215
|
+
- Detailed: `task.list({ layer: "...", status: "..." })`
|
|
216
|
+
- Blockers: `task.get_dependencies({ task_id: ... })`
|
|
217
|
+
|
|
218
|
+
## Edge Case Handling
|
|
219
|
+
|
|
220
|
+
- **Blocked Tasks**: Identify blocking dependencies and recommend resolution order
|
|
221
|
+
- **Stale Tasks**: Detect in_progress tasks without updates (>24h), prompt for status
|
|
222
|
+
- **Conflicting Priorities**: Escalate to user when tasks have competing critical priorities
|
|
223
|
+
- **Missing Expertise**: Recommend creating new specialized agent when no existing agent fits
|
|
224
|
+
- **Parallel Work**: Ensure agents working simultaneously don't conflict on shared files/resources
|
|
225
|
+
|
|
226
|
+
## Self-Correction Mechanisms
|
|
227
|
+
|
|
228
|
+
- Regularly verify task board state matches actual progress
|
|
229
|
+
- Cross-reference decisions with active constraints
|
|
230
|
+
- Validate dependency chains don't create deadlocks
|
|
231
|
+
- Monitor token usage to ensure efficiency
|
|
232
|
+
- Alert when auto-deletion may have removed relevant context
|
|
233
|
+
|
|
234
|
+
You are not just tracking work—you are actively orchestrating a multi-agent development ecosystem using sqlew as your coordination platform. Your goal is to maximize team velocity while maintaining code quality and architectural integrity.
|
|
235
|
+
|
|
236
|
+
**Remember:** Use `action: "help"` and `action: "example"` for quick task templates (low token cost). Use `action: "use_case"` only when you need comprehensive sprint scenarios or are troubleshooting errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG1D;;GAEG;AACH,eAAO,MAAM,mBAAmB,uBAAuB,CAAC;AAExD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG1D;;GAEG;AACH,eAAO,MAAM,mBAAmB,uBAAuB,CAAC;AAExD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW,CA8C/D;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,UAAU,CAiC7D;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,CAGpE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAmDxF"}
|
package/dist/config/loader.js
CHANGED
|
@@ -47,6 +47,10 @@ export function loadConfigFile(configPath) {
|
|
|
47
47
|
...DEFAULT_CONFIG.debug,
|
|
48
48
|
...parsed.debug,
|
|
49
49
|
},
|
|
50
|
+
agents: {
|
|
51
|
+
...DEFAULT_CONFIG.agents,
|
|
52
|
+
...parsed.agents,
|
|
53
|
+
},
|
|
50
54
|
};
|
|
51
55
|
return merged;
|
|
52
56
|
}
|
|
@@ -147,6 +151,15 @@ export function validateConfig(config) {
|
|
|
147
151
|
}
|
|
148
152
|
}
|
|
149
153
|
}
|
|
154
|
+
// Validate agents settings
|
|
155
|
+
if (config.agents) {
|
|
156
|
+
const validKeys = ['scrum_master', 'researcher', 'architect'];
|
|
157
|
+
const configKeys = Object.keys(config.agents);
|
|
158
|
+
const invalidKeys = configKeys.filter(k => !validKeys.includes(k));
|
|
159
|
+
if (invalidKeys.length > 0) {
|
|
160
|
+
errors.push(`agents section has invalid keys: ${invalidKeys.join(', ')}`);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
150
163
|
return {
|
|
151
164
|
valid: errors.length === 0,
|
|
152
165
|
errors,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal configuration file generator
|
|
3
|
+
* Creates .sqlew/config.toml with sensible defaults
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Generate minimal config.toml content
|
|
7
|
+
*
|
|
8
|
+
* @returns TOML content string
|
|
9
|
+
*/
|
|
10
|
+
export declare function generateMinimalConfig(): string;
|
|
11
|
+
/**
|
|
12
|
+
* Create minimal config.toml if it doesn't exist
|
|
13
|
+
*
|
|
14
|
+
* @param projectRoot - Project root directory (defaults to cwd)
|
|
15
|
+
* @returns true if created, false if already exists
|
|
16
|
+
*/
|
|
17
|
+
export declare function createMinimalConfigIfNotExists(projectRoot?: string): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Get the config file path
|
|
20
|
+
*
|
|
21
|
+
* @param projectRoot - Project root directory (defaults to cwd)
|
|
22
|
+
* @returns Absolute path to config.toml
|
|
23
|
+
*/
|
|
24
|
+
export declare function getConfigPath(projectRoot?: string): string;
|
|
25
|
+
//# sourceMappingURL=minimal-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimal-generator.d.ts","sourceRoot":"","sources":["../../src/config/minimal-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CA2D9C;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,WAAW,GAAE,MAAsB,GAAG,OAAO,CAmB3F;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,WAAW,GAAE,MAAsB,GAAG,MAAM,CAEzE"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal configuration file generator
|
|
3
|
+
* Creates .sqlew/config.toml with sensible defaults
|
|
4
|
+
*/
|
|
5
|
+
import { existsSync, mkdirSync, writeFileSync } from 'fs';
|
|
6
|
+
import { join, dirname } from 'path';
|
|
7
|
+
/**
|
|
8
|
+
* Generate minimal config.toml content
|
|
9
|
+
*
|
|
10
|
+
* @returns TOML content string
|
|
11
|
+
*/
|
|
12
|
+
export function generateMinimalConfig() {
|
|
13
|
+
return `# sqlew Minimal Configuration
|
|
14
|
+
# Generated automatically - edit as needed
|
|
15
|
+
# Full example: .sqlew/config.example.toml
|
|
16
|
+
# Documentation: https://github.com/sin5ddd/mcp-sqlew
|
|
17
|
+
|
|
18
|
+
# ============================================================================
|
|
19
|
+
# Specialized Agents Settings
|
|
20
|
+
# ============================================================================
|
|
21
|
+
[agents]
|
|
22
|
+
# Which specialized agents to install when running: npx sqlew-init-agents
|
|
23
|
+
# Set to false to skip agents you don't need (reduces token consumption)
|
|
24
|
+
|
|
25
|
+
# Scrum Master: Multi-agent coordination, task management, sprint planning
|
|
26
|
+
# Token cost: ~12KB per conversation when loaded in Claude Code
|
|
27
|
+
scrum_master = true
|
|
28
|
+
|
|
29
|
+
# Researcher: Query decisions, analyze patterns, investigate context
|
|
30
|
+
# Token cost: ~14KB per conversation when loaded in Claude Code
|
|
31
|
+
researcher = true
|
|
32
|
+
|
|
33
|
+
# Architect: Document decisions, enforce constraints, maintain standards
|
|
34
|
+
# Token cost: ~20KB per conversation when loaded in Claude Code
|
|
35
|
+
architect = true
|
|
36
|
+
|
|
37
|
+
# Example: Minimal installation (only Scrum Master for task management)
|
|
38
|
+
# [agents]
|
|
39
|
+
# scrum_master = true
|
|
40
|
+
# researcher = false
|
|
41
|
+
# architect = false
|
|
42
|
+
|
|
43
|
+
# ============================================================================
|
|
44
|
+
# Other Settings (Optional - uncomment to customize)
|
|
45
|
+
# ============================================================================
|
|
46
|
+
|
|
47
|
+
# [autodelete]
|
|
48
|
+
# # Skip weekends when calculating retention periods
|
|
49
|
+
# ignore_weekend = false
|
|
50
|
+
# # Message retention period in hours
|
|
51
|
+
# message_hours = 24
|
|
52
|
+
# # File change history retention in days
|
|
53
|
+
# file_history_days = 7
|
|
54
|
+
|
|
55
|
+
# [tasks]
|
|
56
|
+
# # Auto-archive done tasks after N days
|
|
57
|
+
# auto_archive_done_days = 2
|
|
58
|
+
# # Stale detection threshold for in_progress tasks (hours)
|
|
59
|
+
# stale_hours_in_progress = 2
|
|
60
|
+
# # Stale detection threshold for waiting_review tasks (hours)
|
|
61
|
+
# stale_hours_waiting_review = 24
|
|
62
|
+
# # Enable automatic stale detection
|
|
63
|
+
# auto_stale_enabled = true
|
|
64
|
+
|
|
65
|
+
# [debug]
|
|
66
|
+
# # Debug log file path (optional)
|
|
67
|
+
# # log_path = ".sqlew/debug.log"
|
|
68
|
+
# # Log level: "error", "warn", "info", "debug"
|
|
69
|
+
# # log_level = "info"
|
|
70
|
+
`;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Create minimal config.toml if it doesn't exist
|
|
74
|
+
*
|
|
75
|
+
* @param projectRoot - Project root directory (defaults to cwd)
|
|
76
|
+
* @returns true if created, false if already exists
|
|
77
|
+
*/
|
|
78
|
+
export function createMinimalConfigIfNotExists(projectRoot = process.cwd()) {
|
|
79
|
+
const configPath = join(projectRoot, '.sqlew', 'config.toml');
|
|
80
|
+
// If config already exists, don't overwrite
|
|
81
|
+
if (existsSync(configPath)) {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
// Create .sqlew directory if it doesn't exist
|
|
85
|
+
const sqlewDir = dirname(configPath);
|
|
86
|
+
if (!existsSync(sqlewDir)) {
|
|
87
|
+
mkdirSync(sqlewDir, { recursive: true });
|
|
88
|
+
}
|
|
89
|
+
// Write minimal config
|
|
90
|
+
const content = generateMinimalConfig();
|
|
91
|
+
writeFileSync(configPath, content, 'utf-8');
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Get the config file path
|
|
96
|
+
*
|
|
97
|
+
* @param projectRoot - Project root directory (defaults to cwd)
|
|
98
|
+
* @returns Absolute path to config.toml
|
|
99
|
+
*/
|
|
100
|
+
export function getConfigPath(projectRoot = process.cwd()) {
|
|
101
|
+
return join(projectRoot, '.sqlew', 'config.toml');
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=minimal-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimal-generator.js","sourceRoot":"","sources":["../../src/config/minimal-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAErC;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDR,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAAC,cAAsB,OAAO,CAAC,GAAG,EAAE;IAChF,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IAE9D,4CAA4C;IAC5C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,uBAAuB;IACvB,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAE5C,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,cAAsB,OAAO,CAAC,GAAG,EAAE;IAC/D,OAAO,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;AACpD,CAAC"}
|
package/dist/config/types.d.ts
CHANGED
|
@@ -50,6 +50,17 @@ export interface DebugConfig {
|
|
|
50
50
|
/** Log level: "error", "warn", "info", "debug" (case-insensitive, default: "info") */
|
|
51
51
|
log_level?: string;
|
|
52
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Specialized agents configuration
|
|
55
|
+
*/
|
|
56
|
+
export interface AgentsConfig {
|
|
57
|
+
/** Install Scrum Master agent (coordination, tasks, sprints) - ~12KB tokens */
|
|
58
|
+
scrum_master?: boolean;
|
|
59
|
+
/** Install Researcher agent (query decisions, analyze patterns) - ~14KB tokens */
|
|
60
|
+
researcher?: boolean;
|
|
61
|
+
/** Install Architect agent (document decisions, enforce constraints) - ~20KB tokens */
|
|
62
|
+
architect?: boolean;
|
|
63
|
+
}
|
|
53
64
|
/**
|
|
54
65
|
* Complete configuration structure
|
|
55
66
|
* Maps to .sqlew/config.toml sections
|
|
@@ -63,6 +74,8 @@ export interface SqlewConfig {
|
|
|
63
74
|
tasks?: TaskConfig;
|
|
64
75
|
/** Debug logging settings */
|
|
65
76
|
debug?: DebugConfig;
|
|
77
|
+
/** Specialized agents settings */
|
|
78
|
+
agents?: AgentsConfig;
|
|
66
79
|
}
|
|
67
80
|
/**
|
|
68
81
|
* Flattened configuration (database format)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wCAAwC;IACxC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,8DAA8D;IAC9D,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iEAAiE;IACjE,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,uCAAuC;IACvC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6DAA6D;IAC7D,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,0CAA0C;IAC1C,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,kDAAkD;IAClD,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,6BAA6B;IAC7B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,+BAA+B;IAC/B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wCAAwC;IACxC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,8DAA8D;IAC9D,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iEAAiE;IACjE,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,uCAAuC;IACvC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gEAAgE;IAChE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6DAA6D;IAC7D,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,0CAA0C;IAC1C,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,kDAAkD;IAClD,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+EAA+E;IAC/E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kFAAkF;IAClF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uFAAuF;IACvF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,6BAA6B;IAC7B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,+BAA+B;IAC/B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,kCAAkC;IAClC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IAEzB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IAGtC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAGlC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,WAwB5B,CAAC"}
|
package/dist/config/types.js
CHANGED