@vheins/local-memory-mcp 0.14.6 → 0.14.8
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/dist/{chunk-GGZWQVNO.js → chunk-3L6GCUKO.js} +2 -2
- package/dist/dashboard/public/assets/index-rb4jB2IX.js +149 -0
- package/dist/dashboard/public/index.html +1 -1
- package/dist/dashboard/server.js +1 -1
- package/dist/mcp/server.js +1 -1
- package/dist/prompts/architecture-design.md +8 -12
- package/dist/prompts/create-task.md +38 -78
- package/dist/prompts/csl-from-docs.md +10 -53
- package/dist/prompts/csl-scrapper.md +12 -52
- package/dist/prompts/documentation-sync.md +10 -11
- package/dist/prompts/export-task-to-github.md +10 -24
- package/dist/prompts/fix-suggestion.md +14 -8
- package/dist/prompts/import-github-issues.md +9 -24
- package/dist/prompts/learning-retrospective.md +8 -10
- package/dist/prompts/memory-agent-core.md +16 -27
- package/dist/prompts/memory-guided-review.md +11 -8
- package/dist/prompts/memory-index-policy.md +17 -23
- package/dist/prompts/project-briefing.md +13 -15
- package/dist/prompts/review-and-audit.md +35 -49
- package/dist/prompts/review-and-post-issue.md +20 -32
- package/dist/prompts/root-cause-analysis.md +10 -11
- package/dist/prompts/security-triage.md +11 -11
- package/dist/prompts/senior-code-review.md +9 -18
- package/dist/prompts/sentinel-issue-resolver.md +14 -36
- package/dist/prompts/session-planner.md +12 -12
- package/dist/prompts/task-management-guidelines.md +18 -27
- package/dist/prompts/task-memory-executor.md +40 -127
- package/dist/prompts/tech-affinity-scout.md +11 -8
- package/dist/prompts/technical-planning.md +22 -37
- package/dist/prompts/tool-usage-guidelines.md +31 -43
- package/package.json +2 -1
- package/dist/dashboard/public/assets/index-mjbj_OkQ.js +0 -87
|
@@ -3,150 +3,63 @@ name: task-memory-executor
|
|
|
3
3
|
description: Sequentially execute pending tasks for current repository.
|
|
4
4
|
arguments:
|
|
5
5
|
- name: agent_identity
|
|
6
|
-
description: Optional runner identity
|
|
6
|
+
description: Optional runner identity. If omitted, infer from CLI/IDE + short session token.
|
|
7
7
|
required: false
|
|
8
8
|
agent: Task Executor
|
|
9
|
-
version: "1.5.4"
|
|
10
|
-
license: Proprietary — Personal Use Only
|
|
11
9
|
category: workflows
|
|
12
|
-
|
|
13
|
-
complexity: Advanced
|
|
10
|
+
version: "1.5.4"
|
|
14
11
|
tags: [workflow, task-execution, memory]
|
|
15
|
-
author: vheins
|
|
16
12
|
---
|
|
17
|
-
# Skill: task-memory-executor
|
|
18
|
-
|
|
19
|
-
## 1. SYNC & FILTER
|
|
20
|
-
1. **Identify**: Resolve runner identity + repo name.
|
|
21
|
-
- Resolver priority: `agent_identity` argument -> auto-generated session identity for this run.
|
|
22
|
-
- Compute this once and reuse it across the full execution loop.
|
|
23
|
-
- Auto identity format: `<runner>-<randomName>`.
|
|
24
|
-
- `<runner>` should come from the active CLI/IDE label (for example `vibe-coding-cli`, `vibe-coding-ide`, `Codex`, `Gemini`) and `<randomName>` is a short stable session token.
|
|
25
|
-
- Use this identity in task claim/update and handoff metadata so parallel terminals remain attributable.
|
|
26
|
-
2. **List**: Call `task-list` ONCE for active tasks.
|
|
27
|
-
3. **Dependency-ready filtering**: In the returned `task-list` order, only run `backlog`/`pending` tasks where:
|
|
28
|
-
- `depends_on` is empty or completed, and
|
|
29
|
-
- `parent_id` is empty or completed.
|
|
30
|
-
- If all are blocked, report blockers and pause.
|
|
31
|
-
4. **Handoffs**: Call `handoff-list` with `status=pending` and inspect relevant transfer context before selecting work. Treat a pending handoff as active only when it has unfinished work, a blocker, a next owner, or a linked task. If it is obsolete or only describes completed work, close it with `handoff-update status=expired`.
|
|
32
|
-
5. **Audit**: Identify stale `in_progress` tasks (>30m no update). Hydrate via `task-detail` to check timestamps.
|
|
33
|
-
|
|
34
|
-
## Task Cache (MANDATORY)
|
|
35
|
-
- `task-detail` MUST be called at most ONCE per task
|
|
36
|
-
- result MUST be reused across all steps
|
|
37
|
-
- do NOT re-fetch or re-inject full detail
|
|
38
|
-
|
|
39
|
-
## 2. EXECUTION LOOP
|
|
40
|
-
1. **Parallelism & Sub-Agents**:
|
|
41
|
-
- **MANDATORY**: Tasks MUST be delegated to sub-agents if the current agent has sub-agent capabilities.
|
|
42
|
-
- **Decomposition**: If a task is too broad, the agent is allowed to decompose it into multiple tasks (via `task-create`) and delegate them to sub-agents.
|
|
43
|
-
- **Spawn Limit**: The total number of parallel sub-agents MUST NOT exceed 2. Each sub-agent executes EXACTLY ONE task at a time.
|
|
44
|
-
- **Fallback**: If the current agent CANNOT spawn sub-agents, it MUST execute tasks sequentially (exactly ONE concurrent task) until the queue is clear.
|
|
45
|
-
2. **Hydrate**: Fetch full context via `task-detail` for the assigned task.
|
|
46
|
-
3. **Readiness re-check**: Re-check `depends_on`/`parent_id` from hydrated detail; if still blocked, skip and pick next ready task.
|
|
47
|
-
4. **Claim**: Use `task-claim` with `task_code` or `task_id` before implementation. Include the runner identity in claim metadata.
|
|
48
|
-
5. **Start**: `task-update` status to `in_progress` (MUST transition: `pending` → `in_progress`). Add agent/role metadata and the same runner identity used by claims.
|
|
49
|
-
6. **Research**: Call `memory-search` (Hybrid Search) and hydrate relevant results with `memory-detail`.
|
|
50
|
-
7. **Standards (MANDATORY PER TASK)**: Call `standard-search` for every task inside the execution loop before any code edit, test edit, refactor, migration, or implementation decision, using the task intent, affected files, inferred language, stack, and repo as filters. This is required even for small tasks, decomposed tasks, and sub-agent assignments. Apply only relevant standards, hydrate details when needed, and if no relevant standards are returned, continue and state that no applicable standards were found.
|
|
51
|
-
8. **Execute**:
|
|
52
|
-
- **Trace**: Inspect logic, call sites, and docs. DO NOT infer from file presence.
|
|
53
|
-
- **Logic**: Implement per description/intent.
|
|
54
|
-
9. **Validate**:
|
|
55
|
-
- Trace path end-to-end.
|
|
56
|
-
- Run tests/linters/type-checks.
|
|
57
|
-
- Logic audit for all affected paths.
|
|
58
|
-
- **Browser Verification (MANDATORY)**: If the task involves UI/UX changes, use Playwright or Chrome DevTools to verify the feature is functional and consumable by the user. Check console errors, layout overflow, responsive behavior, and core interactions.
|
|
59
|
-
10. **Finalize**:
|
|
60
|
-
- **Evidence**: `task-update` status to `completed` with detailed 'comment' (inspected files, verified logic, test results).
|
|
61
|
-
- **Cleanup**: Completing/canceling a task automatically releases active claims and expires linked pending handoffs.
|
|
62
|
-
- **Memory**: Store insights as `code_fact`/`pattern` via `memory-store`.
|
|
63
|
-
- **Standards**: Store durable implementation rules via `standard-store`, not generic memory.
|
|
64
|
-
- **Handoff**: If work remains or ownership changes, create `handoff-create` with concise summary and structured context containing next steps/blockers/remaining work. Do not create handoffs for completed-work summaries. Include the runner identity in handoff context/metadata.
|
|
65
|
-
- **Retrospective**: Invoke `learning-retrospective`.
|
|
66
|
-
- **Commit**: Atomic git commit. The commit message MUST follow this format:
|
|
67
|
-
```
|
|
68
|
-
type(scope): your commit message
|
|
69
|
-
|
|
70
|
-
- {{task_title}}
|
|
71
|
-
{{summary_task}}
|
|
72
|
-
|
|
73
|
-
{{keyword}} #{{issue_number}}
|
|
74
|
-
```
|
|
75
|
-
Use `fix` for bug fixes, `closes` for features/chores, `resolve` as general. Multiple issues: e.g., `fix #123, closes #124, resolve #125`. Issues close only when merged into the default branch.
|
|
76
|
-
- **Issue Number Extraction**: Read the issue number from task metadata when available. If metadata only contains a GitHub Issue URL, extract the trailing issue number from that URL before committing.
|
|
77
|
-
|
|
78
|
-
10A. **BLOCKER HANDLING (AUTOMATIC TASK CREATION)**:
|
|
79
|
-
- **Trigger**: When task status is updated to `blocked` with a comment explaining the blocker reason.
|
|
80
|
-
- **Blocker Classification**: Analyze the blocker comment to determine if it is **internal solvable** or **external**:
|
|
81
|
-
- **Internal Solvable** (auto-create task): Missing dependency, missing module/function, configuration/env setup, implementation gap, failing test, build error.
|
|
82
|
-
- **External** (skip auto-create): Awaiting user input/approval, API/service unavailability, manual external setup required.
|
|
83
|
-
- **Pattern Matching**: Use regex patterns to detect internal blockers in the comment:
|
|
84
|
-
- Missing patterns: `/(module|package|library|dependency|import)\s+(not\s+found|missing|undefined|not\s+installed)/i`
|
|
85
|
-
- Not implemented: `/(function|interface|class|method|endpoint)\s+not\s+(found|implemented|exists)/i`
|
|
86
|
-
- Configuration: `/(config|configuration|setup|env|environment)\s+(missing|not\s+set|invalid)/i`
|
|
87
|
-
- Test/build failure: `/(test|build|compile|type\s+check)\s+(failed|error)/i`
|
|
88
|
-
- **Auto-Create Task** (if internal solvable):
|
|
89
|
-
- Task Code: `${parent_task_code}-FIX-${unix_timestamp}`
|
|
90
|
-
- Title: `FIX: [${parent_task_title}] - Resolve: ${blocker_reason_extracted}`
|
|
91
|
-
- Description: Follow standard format (1. Context & Analysis, 2. Step & Implementation, 3. Acceptance & Verification)
|
|
92
|
-
- Parent ID: Set to current blocked task ID
|
|
93
|
-
- Priority: `4` (HIGH)
|
|
94
|
-
- Phase: `blocker-resolution`
|
|
95
|
-
- Tags: `["blocker-fix", "auto-generated"]`
|
|
96
|
-
- Metadata: Include `triggered_by_task`, `blocker_reason`, `creation_timestamp`, and `agent_identity`
|
|
97
|
-
- **Update Parent Task**: Add comment linking to the new blocker-fix task
|
|
98
|
-
- **Link Dependencies**: Set parent task's `depends_on` to the new blocker-fix task
|
|
99
|
-
- **Skip Creation** (if external): Log that blocker is external, keep task status as `blocked`, no automatic task created.
|
|
100
13
|
|
|
101
|
-
|
|
14
|
+
## FSM — Main Loop
|
|
102
15
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
1. Call `task-list` (status: `backlog`).
|
|
106
|
-
2. Move up to 20 highest-priority tasks to `pending` via `task-update`.
|
|
107
|
-
3. Interpret priority using MCP ordering: `5=Critical`, `4=High`, `3=Medium`, `2=Normal`, `1=Low`.
|
|
16
|
+
Entry=S0 → S1 → G0 → S2 → S3 → S4 → S5 → S6 → S7 → S8 Exit=exhausted|blocked
|
|
17
|
+
Guard: S(N) req S(N-1)✅; dependency-ready filter (depends_on+parent_id done)
|
|
108
18
|
|
|
109
|
-
|
|
19
|
+
S0 | sync: resolve identity (arg→auto `<runner>-<randomName>`, 1x reuse all loop) + task-list(ONCE) + handoff-list(pending, close stale) + audit stale in_progress(>30m, hydrate via task-detail) | — | filtered queue | —
|
|
20
|
+
S1 | hydrate: task-detail ONCE per task — MUST cache, MUST reuse all steps, NO re-fetch | S0✅ | full task | —
|
|
21
|
+
G0 | readiness: depends_on✅ AND parent_id✅? if all blocked → report blockers + pause | S1✅ | → S2 / skip+pick next | —
|
|
22
|
+
S2 | claim: task-claim(with identity metadata) + task-update→in_progress(agent, role, identity) | G0✅ | ownership | —
|
|
23
|
+
S3 | research: memory-search + standard-search(MANDATORY per task — even sub-agents/decomposed) + hydrate relevant | S2✅ | context | —
|
|
24
|
+
S4 | execute: trace logic+callsites+docs — DO NOT infer from file presence; decompose if too broad | S3✅ | changes | —
|
|
25
|
+
S5 | validate: tests + linters + type-check + browser(if UI — MANDATORY: console errors, overflow, responsive, core interactions) + logic audit all paths | S4✅ | verification | —
|
|
26
|
+
S6 | finalize: task-update→completed(evidence: inspected files, verified logic, test results) + memory-store(insights) + standard-store(rules) + handoff(if work remains — with identity) + retrospective + report | S5✅ | completion | —
|
|
27
|
+
S7 | commit: `type(scope): msg — {{task_title}} {{summary_task}} {{keyword}} #N` (fix|closes|resolve, extract N from metadata/URL) | S6✅ | git commit | —
|
|
28
|
+
S8 | repeat → S0 | queue not empty | next task | —
|
|
110
29
|
|
|
111
|
-
|
|
30
|
+
## Design Note
|
|
112
31
|
|
|
113
|
-
|
|
114
|
-
- Example: "ImportError: Function 'validateToken' not found"
|
|
32
|
+
Main loop is intentionally infinite — runs until MCP task queue is fully exhausted (no pending/backlog tasks remain across all cycles). No max_iterations guard needed.
|
|
115
33
|
|
|
116
|
-
|
|
117
|
-
- Example: "Function 'processPayment' not implemented - exists in type definitions but no implementation"
|
|
34
|
+
## Parallelism Rules
|
|
118
35
|
|
|
119
|
-
|
|
120
|
-
-
|
|
36
|
+
- Delegate to sub-agents if capability exists; decompose broad tasks via task-create
|
|
37
|
+
- **Max 2** parallel sub-agents; each executes EXACTLY 1 task
|
|
38
|
+
- Fallback: sequential (1 concurrent) if no sub-agent capability
|
|
121
39
|
|
|
122
|
-
|
|
123
|
-
- Example: "Type error: Property 'user' does not exist on type 'Request'"
|
|
40
|
+
## FSM — Blocker Handling
|
|
124
41
|
|
|
125
|
-
|
|
42
|
+
Entry=S0 → S1 → G1|G2 → S2 Exit=unblocked|deferred
|
|
126
43
|
|
|
127
|
-
|
|
128
|
-
|
|
44
|
+
S0 | detect: task-update→blocked with reason | is blocked? | blocker comment | —
|
|
45
|
+
S1 | classify: regex-match comment against patterns below | S0✅ | internal solvable | external | —
|
|
46
|
+
G1 | internal solvable? | S1✅ | → S2 auto-create | —
|
|
47
|
+
G2 | external? (awaiting user, API down) | S1✅→external | → keep blocked, no auto task | —
|
|
48
|
+
S2 | create fix task: code=`{parent}-FIX-{unix}`, title=`FIX: [{parent_title}] — Resolve: {reason}`, priority=4(HIGH), phase=blocker-resolution, parent=current_id, depends_on=parent, tags=[blocker-fix,auto-generated], metadata={triggered_by, blocker_reason, timestamp, identity} | G1✅ | blocker fix task | —
|
|
129
49
|
|
|
130
|
-
|
|
131
|
-
- Example: "Payment gateway API not responding"
|
|
50
|
+
### Blocker Regex Patterns
|
|
132
51
|
|
|
133
|
-
|
|
52
|
+
| Category | Regex | Example |
|
|
53
|
+
| --------- | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
|
|
54
|
+
| Missing | `/(module\|package\|library\|dependency\|import)\s+(not\s+found\|missing\|undefined\|not\s+installed)/i` | `ImportError: Function 'validateToken' not found` |
|
|
55
|
+
| Not impl | `/(function\|interface\|class\|method\|endpoint)\s+not\s+(found\|implemented\|exists)/i` | `Function 'processPayment' not implemented` |
|
|
56
|
+
| Config | `/(config\|configuration\|setup\|env\|environment)\s+(missing\|not\s+set\|invalid)/i` | `DATABASE_URL not set` |
|
|
57
|
+
| Test fail | `/(test\|build\|compile\|type\s+check)\s+(failed\|error)/i` | `Type error: Property 'user' not on 'Request'` |
|
|
134
58
|
|
|
135
|
-
|
|
136
|
-
```
|
|
137
|
-
Task: FEATURE-42 (Add payment middleware)
|
|
138
|
-
Status: blocked
|
|
139
|
-
Comment: "Function 'chargeCard' not implemented"
|
|
140
|
-
```
|
|
59
|
+
## FSM — Backlog Maintenance
|
|
141
60
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
Code: FEATURE-42-FIX-1714737908
|
|
145
|
-
Title: FIX: [Add payment middleware] - Resolve: Function 'chargeCard' not implemented
|
|
146
|
-
Parent: FEATURE-42
|
|
147
|
-
Priority: 4 (HIGH)
|
|
148
|
-
Tags: ["blocker-fix", "auto-generated"]
|
|
149
|
-
```
|
|
61
|
+
Entry=S0 → S1 Exit=promoted
|
|
62
|
+
Guard: active queue empty?
|
|
150
63
|
|
|
151
|
-
|
|
152
|
-
|
|
64
|
+
S0 | list backlog: task-list(status=backlog) | active queue empty? | backlog tasks | —
|
|
65
|
+
S1 | promote top 20 by priority(5→1) to pending via task-update | S0✅ | tasks→pending | —
|
|
@@ -6,16 +6,19 @@ arguments:
|
|
|
6
6
|
description: CSV tech tags (e.g., 'react, tailwind').
|
|
7
7
|
required: true
|
|
8
8
|
agent: Tech Scout
|
|
9
|
-
version: "1.0.0"
|
|
10
9
|
category: planning
|
|
10
|
+
version: "1.0.0"
|
|
11
11
|
tags: [planning, patterns, memory, tech-affinity]
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
## FSM
|
|
15
|
+
|
|
16
|
+
Entry=S0 → S1 → S2 → S3 Exit=scouted
|
|
17
|
+
Guard: S(N) req S(N-1)✅
|
|
18
|
+
|
|
19
|
+
S0 | search: memory-search (current_tags=[tags]) + standard-search (stack=[tags]) | tags provided? | pointer rows | —
|
|
20
|
+
S1 | hydrate: memory-detail for relevant pointers | S0✅ | full entries | —
|
|
21
|
+
S2 | filter: pattern + decision + coding standard entries from similar stacks | S1✅ | applicable knowledge | —
|
|
22
|
+
S3 | adapt: explain adaptation to current project; separate memory-derived vs standards | S2✅ | adaptation guide | —
|
|
15
23
|
|
|
16
|
-
|
|
17
|
-
1. **Search**: Call `memory-search` with `current_tags=[{{tags}}]`.
|
|
18
|
-
2. **Standards**: Call `standard-search` with `stack=[{{tags}}]` to find reusable coding standards.
|
|
19
|
-
3. **Hydrate**: Use `memory-detail` for relevant memory pointer rows.
|
|
20
|
-
4. **Filter**: Identify applicable `pattern`, `decision`, and coding standard entries from similar stacks.
|
|
21
|
-
5. **Adapt**: Explain adaptation of these practices to current project and clearly separate memory-derived guidance from standards.
|
|
24
|
+
Tags: {{tags}}
|
|
@@ -6,49 +6,34 @@ arguments:
|
|
|
6
6
|
description: High-level goal.
|
|
7
7
|
required: true
|
|
8
8
|
agent: Technical Architect
|
|
9
|
-
version: "1.0.0"
|
|
10
|
-
license: Proprietary — Personal Use Only
|
|
11
9
|
category: workflows
|
|
12
|
-
|
|
13
|
-
complexity: Advanced
|
|
10
|
+
version: "1.0.0"
|
|
14
11
|
tags: [workflow, technical-planning]
|
|
15
|
-
author: vheins
|
|
16
12
|
---
|
|
17
13
|
|
|
18
|
-
# Skill: Technical Planning Pipeline
|
|
19
|
-
|
|
20
|
-
## Purpose
|
|
21
|
-
Produces a comprehensive technical blueprint (tech stack, architecture, domain, database, API contracts, execution plan).
|
|
22
|
-
|
|
23
|
-
## Input
|
|
24
|
-
| Variable | Type | Req | Description |
|
|
25
|
-
|----------|------|-----|-------------|
|
|
26
|
-
| `objective` | string | Yes | High-level goal |
|
|
27
|
-
|
|
28
14
|
## FSM
|
|
29
|
-
Entry: create-task → task-claim Exit: task-update completed|blocked
|
|
30
|
-
Guard: A(N) requires all prev A✅
|
|
31
15
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
G1 | approve stack + arch | A2✅ | → proceed | —
|
|
35
|
-
A3 | domain-modeling | G1✅ | domain model | design/domain/
|
|
36
|
-
A4 | database-schema-planning | A3✅ | schema plan | design/database/
|
|
37
|
-
G2 | approve domain + db | A4✅ | → proceed | —
|
|
38
|
-
A5 | api-contract-design | G2✅ | API contract | design/api/
|
|
39
|
-
G3 | approve API contracts | A5✅ | → proceed | —
|
|
40
|
-
A6 | roadmap-creation + all sprint plans + MCP tasks | G3✅ | roadmap + sprint-1..sprint-N + allocation audit + MCP task tree | tasks/roadmap/ + tasks/sprints/ + local-memory-mcp
|
|
41
|
-
GF | final approve | A6✅ | → documentation | —
|
|
16
|
+
Entry=create-task → task-claim Exit=task-update completed|blocked
|
|
17
|
+
Guard: A(N) req all prev A✅
|
|
42
18
|
|
|
43
|
-
|
|
44
|
-
|
|
19
|
+
A1 | tech-stack-selection | — | tech stack decision | —
|
|
20
|
+
A2 | architecture-design | A1✅ | architecture plan | design/architecture/
|
|
21
|
+
G1 | approve stack + arch | A2✅ | → proceed | —
|
|
22
|
+
A3 | domain-modeling | G1✅ | domain model | design/domain/
|
|
23
|
+
A4 | database-schema-planning | A3✅ | schema plan | design/database/
|
|
24
|
+
G2 | approve domain + db | A4✅ | → proceed | —
|
|
25
|
+
A5 | api-contract-design | G2✅ | API contract | design/api/
|
|
26
|
+
G3 | approve API contracts | A5✅ | → proceed | —
|
|
27
|
+
A6 | derive total_sprints from roadmap timeline+capacity → generate 1 sprint-planning task per sprint(N) + allocation audit + MCP task tree(parent/child + depends_on) | G3✅ | roadmap + sprints-1..N + audit + tasks | tasks/ + MCP
|
|
28
|
+
GF | final approve — blocked if sprint-N.md missing or MCP task tree not created | A6✅ | → documentation | —
|
|
45
29
|
|
|
46
30
|
## Optional
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
31
|
+
|
|
32
|
+
A7 | capacity-planning | — | capacity plan | —
|
|
33
|
+
A8 | event-storming | — | domain discovery | —
|
|
34
|
+
A9 | dependency-mapping | — | dependency map | —
|
|
35
|
+
A10 | microservices-boundary | — | service boundaries | —
|
|
36
|
+
A11 | monolith-decomposition | — | migration plan | —
|
|
37
|
+
A12 | sla-slo-definition | — | SLA/SLO doc | —
|
|
38
|
+
A13 | system-design-review | — | review findings | —
|
|
39
|
+
A14 | tech-affinity-scout | — | best practices | —
|
|
@@ -3,49 +3,37 @@ name: tool-usage-guidelines
|
|
|
3
3
|
description: Tool usage standards & data integrity.
|
|
4
4
|
arguments: []
|
|
5
5
|
agent: System Architect
|
|
6
|
-
version: "1.0.0"
|
|
7
|
-
license: Proprietary — Personal Use Only
|
|
8
6
|
category: workflows
|
|
9
|
-
|
|
10
|
-
complexity: Beginner
|
|
7
|
+
version: "1.0.0"
|
|
11
8
|
tags: [workflow, tooling, memory, policy, mcp]
|
|
12
|
-
author: vheins
|
|
13
9
|
---
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
##
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
- **Claim task**: Use `task-claim` for task ownership. Do not encode claims in memory metadata.
|
|
45
|
-
- **Inspect claims**: Use `claim-list` to inspect active ownership by repo or agent before reassigning work.
|
|
46
|
-
- **Release claims**: Use `claim-release` to explicitly clear stale ownership when work is transferred or abandoned.
|
|
47
|
-
- **Linkage**: Prefer `task_code` for human workflows and `task_id` when already hydrated.
|
|
48
|
-
|
|
49
|
-
## 5. Reference Flow
|
|
50
|
-
- Use the dashboard Reference tab as the canonical index of available tools, prompts, resources, schemas, and descriptions.
|
|
51
|
-
- Keep prompt and tool definitions aligned with actual schemas so agents and UI users see the same workflow contract.
|
|
10
|
+
|
|
11
|
+
## FSM — Memory Flow
|
|
12
|
+
|
|
13
|
+
Entry=S0 → S1 → S2 → S3 → S4 Exit=maintained
|
|
14
|
+
Guard: S(N) req S(N-1)✅
|
|
15
|
+
|
|
16
|
+
S0 | navigate: memory-recap (overview) / memory-search (targeted) | — | pointer rows | —
|
|
17
|
+
S1 | hydrate: memory-detail (id or code) before relying on content | S0✅ | full entry | —
|
|
18
|
+
S2 | store: memory-store (durable only, tech tags, human title, aux in metadata) | — | stored | —
|
|
19
|
+
S3 | maintain: memory-update / supersedes for changes; avoid duplicates | — | updated | —
|
|
20
|
+
S4 | acknowledge: memory-acknowledge (used|irrelevant|contradictory) after code gen | code generated? | feedback | —
|
|
21
|
+
|
|
22
|
+
## FSM — Standards Flow
|
|
23
|
+
|
|
24
|
+
Entry=S0 → S1 → S2 Exit=done
|
|
25
|
+
Guard: S(N) req S(N-1)✅
|
|
26
|
+
|
|
27
|
+
S0 | search: standard-search mandatory before code edit/test/refactor/migrate (query, lang, stack, repo) | — | applicable | —
|
|
28
|
+
S1 | apply precisely as implementation rules | S0✅ | compliant code | —
|
|
29
|
+
S2 | store: standard-store (1 rule/entry, name, content, context, version, lang, stack, tags, scope) | — | new entry | —
|
|
30
|
+
|
|
31
|
+
## FSM — Handoff & Claim Flow
|
|
32
|
+
|
|
33
|
+
Entry=S0 → S1 → S2 → S3 Exit=resolved
|
|
34
|
+
Guard: S(N) req S(N-1)✅
|
|
35
|
+
|
|
36
|
+
S0 | check: handoff-list (status, from/to agent) + claim-list | — | active state | —
|
|
37
|
+
S1 | ensure: NO handoff for completion summaries — use task-update or memory | — | valid | —
|
|
38
|
+
S2 | create: handoff-create (unfinished work only, summary + structured context) / task-claim (ownership) | S0✅ | pending | claimed | —
|
|
39
|
+
S3 | close: handoff-update (accepted|rejected|expired) / claim-release (stale ownership) | consumed | stale | resolved | —
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vheins/local-memory-mcp",
|
|
3
|
-
"version": "0.14.
|
|
3
|
+
"version": "0.14.8",
|
|
4
4
|
"description": "MCP Local Memory Service for coding copilot agents",
|
|
5
5
|
"mcpName": "io.github.vheins/local-memory-mcp",
|
|
6
6
|
"type": "module",
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
"marked": "^18.0.0",
|
|
56
56
|
"proper-lockfile": "^4.1.2",
|
|
57
57
|
"qs": "^6.15.0",
|
|
58
|
+
"sweetalert2": "^11.26.25",
|
|
58
59
|
"zod": "^4.3.5"
|
|
59
60
|
},
|
|
60
61
|
"devDependencies": {
|