| name | decomposition-library |
| description | Activate after every completed decomposition to offer saving. Activate when user says "save this", "add to library", "show my library", "what have I researched", "past decompositions", "have I done this before", or starts a decomposition on a topic that may already exist in the library. Always check library/ folder silently at the start of any new decomposition.
|
Design system โ mandatory on all HTML artifacts
Every HTML artifact generated by this skill MUST follow this design system.
No exceptions. Never invent colours, never use dark backgrounds, never use
purple or blue as primary backgrounds.
Palette:
- Page background:
#fafaf8 (warm white)
- Card background:
white
- Primary text:
#2c2c2c (soft charcoal)
- Secondary text:
#6b6b6b
- Muted text:
#9a9690
- Accent / headers:
#1b5e52 (deep teal) โ the ONLY accent colour
- Border:
#e0ddd6
- Hover tint:
#f0f7f4
- Warning/amber:
#fff8f0 background, #f0d090 border, #5a3a00 text
Typography:
- Body:
'Georgia', serif, 14px minimum
- Monospace labels:
'Courier New', monospace
- Never below 11px anywhere
Component rules:
- All section headers:
background: #1b5e52; color: white
- Cards:
background: white; border: 1px solid #e0ddd6; border-radius: 8px
- Buttons:
background: #1b5e52; color: white for primary actions
- No gradients, no shadows, no dark backgrounds on outer containers
Pill colour system:
- Global company:
background:#e6f1fb; color:#0c447c; border:0.5px solid #85b7eb
- India listed:
background:#eaf3de; color:#27500a; border:0.5px solid #97c459
- India private:
background:#faeeda; color:#633806; border:0.5px solid #ef9f27
- Flagged:
background:#fcebeb; color:#791f1f; border:0.5px solid #f09595
- Neutral segment:
background:#f3f4f6; color:#374151; border:0.5px solid #d1d5db
- Seeded:
background:#eaf3de; color:#27500a
- Discovered:
background:#e6f1fb; color:#0c447c
Attribution footer โ mandatory on every artifact:
<div style="margin-top:32px;padding-top:12px;border-top:1px solid #e0ddd6;
display:flex;justify-content:space-between;align-items:center;
font-family:'Courier New',monospace;font-size:10px;color:#9a9690">
<span>Curiosity Stack is not a SEBI registered investment advisor ยท Not investment advice ยท Makers accept no liability ยท For research only</span>
<a href="https://curiositystack.app" target="_blank"
style="color:#1b5e52;font-weight:700;text-decoration:none">
โฌก curiositystack.app
</a>
</div>
Decomposition Library
Purpose
A personal research library that grows with every session. Every completed decomposition can be saved locally as a structured file. The library is searchable, cross-referenceable, and optionally mirrored to Google Drive or Notion.
Step 0 โ Check on New Decomposition Start
At the start of every new decomposition, silently scan the library/ folder for files whose topic name matches or is close to the current topic.
If a match is found, ask once:
I have a past decomposition on [topic] from [date].
Want me to pull it up? It could save us some ground.
1. Yes โ load it as context
2. No โ start fresh
If yes: load the file, surface the key layer conclusions, and use them as the starting point. Skip layers the user already has strong conclusions on unless they want to revisit.
If no: proceed normally. Do not ask again.
Step 1 โ Save Prompt After Output
After any output is generated (Value Chain, Mindmap, or Research Note), ask:
Save this decomposition to your library? (yes / no)
If the user has library_save set to always in local.md โ save automatically without asking.
If no โ skip. Do not ask again in the same session.
Step 2 โ What to Save
Save a structured .md file to the library/ folder in the plugin directory.
Filename format: YYYY-MM-DD-[topic-slug].md
Example: 2026-03-13-grid-scale-battery-storage.md
File contents:
# [TOPIC]
*Decomposed: [Date] | Output: [Value Chain / Mindmap / Research Note]*
---
## Tags
- Sector: [sector]
- Geography: [India / Global / Both]
- Stage: [early / developing / mature]
---
## Layer Summaries
**L0 โ Signal**
[2-3 line summary of the signal and why it matters now]
**L1 โ Mechanics**
[2-3 line summary of what this actually is]
**L2 โ Cause Tree**
[Key root causes identified โ bullet list]
**L3 โ Solution Space**
[Solution categories and which industries they map to]
**L4 โ Build Requirements**
[Key inputs, infrastructure, talent, bottlenecks]
**L5 โ Value Chain Actors**
Global: [key companies named]
India: [India proxy companies named with proxy pattern]
**L6 โ Research Landscape**
[How the space is accessed, stage of development]
---
## Sources Cited
[List of sources referenced during this session]
---
## Conviction
Score: [blank โ to be filled manually or via stress test]
Last reviewed: [date]
Next review trigger: [user-defined or blank]
---
## Notes
[Any freetext notes from the session]
Step 3 โ Mirror to Drive or Notion (if connected)
After saving locally, check local.md for connected sources.
If Google Drive is connected and library_mirror is set to drive:
Saved locally. Mirroring to your Google Drive โ
I'll keep both in sync going forward.
If Notion is connected and library_mirror is set to notion:
Saved locally. Adding to your Notion research database.
If both connected, use whichever is set as primary in local.md.
If neither set, ask once:
Want me to also back this up to your connected Drive or Notion?
This keeps your library accessible across devices.
1. Google Drive
2. Notion
3. Local only
Save their answer to local.md as library_mirror โ never ask again.
/curiosity-stack:library Command
When user runs this command, present:
Your Decomposition Library
[X] decompositions saved
Recent:
โ [topic] โ [date] โ [output type]
โ [topic] โ [date] โ [output type]
โ [topic] โ [date] โ [output type]
Options:
1. Search by topic
2. Search by sector or tag
3. Open a specific decomposition
4. Delete a decomposition
5. Export full library to Drive / Notion
Search scans filenames and tag fields. Opening a decomposition loads it as context and offers to run a layer delta โ comparing it against a fresh decomposition on the same topic to show what has changed.
local.md additions
After setup Section 6, add these fields to curiosity-stack.local.md:
library_save: always / ask / never
library_mirror: drive / notion / local
library_count: [auto-incremented integer]