From devflow
Interactive wizard to scaffold RAG Memory collections tailored to your use cases (project docs, conventions, knowledge base, agent preferences). Use this for initial RAG Memory setup to create a well-organized collection structure.
npx claudepluginhub joshuarweaver/cascade-code-general-misc-4 --plugin codingthefuturewithai-claude-code-primitivesThis skill is limited to using the following tools:
You are helping a user set up their RAG Memory collections with a minimal, durable starter scaffold.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
You are helping a user set up their RAG Memory collections with a minimal, durable starter scaffold.
mcp__rag-memory-primary__list_collections() before doing anythingmcp__rag-memory-primary__create_collectionmetadata_schema parameter when calling create_collectionagent-preferences collection is auto-created by the MCP server on startupAlways start here:
mcp__rag-memory-primary__list_collections()
Display what they have (name, domain, description if available).
Then ask:
"You already have collections set up. What would you like to do?
A) Add missing recommended collections (I'll propose what's missing from the standard scaffold) B) Review what I have and map them to recommendations (understand your current setup) C) Start fresh conceptually (no deletions, just build a new mental model)
Please choose A, B, or C."
[WAIT FOR RESPONSE - DO NOT CREATE ANYTHING UNTIL USER RESPONDS]
Say: "Your knowledge base is empty. I'll propose a minimal starter scaffold of 5-6 durable collections that stay useful as you grow."
Proceed to Step 2.
Before proposing collections, provide this brief explanation:
"Why start with a small number of collections?
Collections are partitions for retrieval - when you search, you search one collection at a time. Having fewer, clearer buckets reduces confusion and makes it easier to know where to put things and where to search.
This is a starting scaffold designed around semantic categories (what something is about) rather than source types (where it came from). You can always add more later, but starting simple is better than over-organizing.
I'll propose 5 core collections, plus an optional business collection if you need it."
Present this exact scaffold:
"Recommended starter scaffold:
Knowledge and Reference (knowledge-and-reference)
Projects (projects)
Practices and Procedures (practices-and-procedures)
People and Relationships (people-and-relationships)
Inbox Unsorted (inbox-unsorted)
Optional: Do you also want a collection for running a business (ops/finance/clients)?
If yes, I'll add:
business-operations)
Does this look good? I can create these as-is, or you can suggest modifications."
[WAIT FOR CONFIRMATION]
Once the user confirms, create each collection using the exact names and purposes above.
mcp__rag-memory-primary__create_collection(
name="knowledge-and-reference",
description="External documentation and reference material (library docs, frameworks, official docs, standards, manuals)",
domain="Engineering",
domain_scope="Official documentation, technical references, standards, and external learning resources. Does not include internal company docs or work-in-progress project notes.",
metadata_schema={
"custom": {},
"routing": {
"examples": [
"What does the React docs say about X?",
"Official guidelines for Y",
"Framework documentation for Z",
"API reference for this library"
],
"exclusions": [
"Our team's process for X",
"Project notes about Y",
"Internal company documentation"
]
}
}
)
mcp__rag-memory-primary__create_collection(
name="projects",
description="Work-in-progress contexts (project notes, plans, drafts, links related to things being built or explored)",
domain="Project",
domain_scope="Active and recent project work including design docs, specs, exploration notes, and prototyping context. Does not include stable procedures or completed/archived work.",
metadata_schema={
"custom": {},
"routing": {
"examples": [
"Notes about the redesign project",
"What are we building for feature X?",
"Project plan for Y",
"Design decisions for the new system"
],
"exclusions": [
"External library documentation",
"Standard operating procedures",
"Stable team workflows"
]
}
}
)
mcp__rag-memory-primary__create_collection(
name="practices-and-procedures",
description="Stable ways of working (SOPs, checklists, playbooks, principles, workflows, rules)",
domain="Operations",
domain_scope="Established processes, standard operating procedures, decision frameworks, and repeatable workflows. Does not include one-off project plans or temporary experiments.",
metadata_schema={
"custom": {},
"routing": {
"examples": [
"What is our code review process?",
"How do we deploy to production?",
"Team workflow for X",
"Our standard checklist for releases"
],
"exclusions": [
"External documentation",
"One-off project plans",
"Temporary experiments"
]
}
}
)
mcp__rag-memory-primary__create_collection(
name="people-and-relationships",
description="Person-centric notes (who someone is, context about people, preferences, history)",
domain="Personal",
domain_scope="Information about individuals including teammates, clients, contacts, and their preferences, history, and context. Does not include general team documentation or processes.",
metadata_schema={
"custom": {},
"routing": {
"examples": [
"What do I know about John?",
"Client X's preferences",
"Who is the contact for Y?",
"Notes about my conversation with Z"
],
"exclusions": [
"Technical documentation",
"Project execution details",
"Team processes"
]
}
}
)
mcp__rag-memory-primary__create_collection(
name="inbox-unsorted",
description="Temporary holding for uncategorized items; meant to be reviewed and refiled later",
domain="Intake",
domain_scope="Temporary staging area for new content that hasn't been categorized yet. Should be periodically reviewed and moved to appropriate collections.",
metadata_schema={
"custom": {},
"routing": {
"examples": [
"Save this but not sure where it goes",
"Quick capture for later sorting",
"Miscellaneous note to categorize later"
],
"exclusions": [
"Content that clearly fits another collection"
]
}
}
)
mcp__rag-memory-primary__create_collection(
name="business-operations",
description="Accounting/finance exports, vendors, client operations, business strategy, internal business procedures",
domain="Business",
domain_scope="Business management including financial records, vendor relationships, client operations, strategic planning, and internal business processes. Does not include project execution details or external technical documentation.",
metadata_schema={
"custom": {},
"routing": {
"examples": [
"Q4 financial records",
"Vendor contract details",
"Client invoice for X",
"Business strategy notes"
],
"exclusions": [
"External technical docs",
"Personal relationship notes",
"Project execution details"
]
}
}
)
Report each success as you create them:
After creation, verify:
mcp__rag-memory-primary__list_collections()
Show the user their new setup in a simple table:
"Your collections are ready:
| Collection | Purpose |
|---|---|
| knowledge-and-reference | External docs, frameworks, standards, technical references |
| projects | Work-in-progress project notes, plans, designs, exploration |
| practices-and-procedures | SOPs, playbooks, checklists, stable workflows |
| people-and-relationships | Person-centric notes, context, preferences, history |
| inbox-unsorted | Temporary holding; review and refile periodically |
| business-operations | (if created) Finance, vendors, clients, business strategy |
Quick "what goes where" guide:
These collections can evolve as your needs grow, but this scaffold gives you a durable starting point."
[DONE - Do not suggest next steps or ask what they want to do next]
Compare their existing collections to the standard scaffold. Identify which of the 5-6 standard collections are missing.
"Based on the standard scaffold, you're missing:
Would you like me to create these?"
If yes, create only the missing ones using the definitions from Step 4.
Present their existing collections alongside the standard scaffold:
"Here's how your current collections map to the recommended scaffold:
Your Current Collections:
Standard Scaffold:
You can keep your existing setup, rename/reorganize, or add from the standard scaffold. What would you like to do?"
"I'll explain the standard scaffold philosophy without touching your existing collections:
[Provide the explanation from Step 2]
[Present the standard scaffold from Step 3]
Your existing collections remain unchanged. This is just a conceptual framework you can use to think about organization going forward."
If collection creation fails (name already exists):
"A collection named {name} already exists. Skipping this one since it's already set up."
If MCP server not connected: "I can't connect to the RAG Memory server. Make sure:
Would you like help troubleshooting?"
list_collections() first - Never skip this stepmetadata_schema parameter when calling create_collectionagent-preferences collection is auto-created by the RAG Memory MCP server on startup with pre-populated routing hints. You will see it when you call list_collections().