skills/research-deep/SKILL.md
--- tldr: Recursive deep research — outline areas, explore each progressively, synthesise across areas category: observation --- # /eidos:research-deep Deep research on a broad topic via recursive area exploration and progressive externalisation. ## Usage ``` /eidos:research-deep [topic or domain] # start — will ask for budget /eidos:research-deep [topic] budget 10 # start with soft budget of 10 /eidos:research-deep [topic] budget 10 hard # start
npx skillsauth add agenticnotetaking/eidos skills/research-deepInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Deep research on a broad topic via recursive area exploration and progressive externalisation.
/eidos:research-deep [topic or domain] # start — will ask for budget
/eidos:research-deep [topic] budget 10 # start with soft budget of 10
/eidos:research-deep [topic] budget 10 hard # start with hard budget of 10
/eidos:research-deep [topic] budget none # start with no budget constraint
/eidos:research-deep continue # resume existing deep research
Use research-deep (not regular research) when:
Regular /eidos:research is better for focused questions with a specific answer.
Check ARGUMENTS:
continue → go to Continue Modebudget N and optional hard from args if presentUse AskUserQuestion to establish:
Budget: If not provided in args, ask:
If the user already provided a clear scope (like a detailed prompt), confirm and proceed — but still ask for budget if not specified.
Think about the topic and identify 4-8 areas that together cover the landscape. This is the research plan — it will evolve as you learn more.
Read the template: [[template - research-deep - recursive area exploration with progressive synthesis]]
Run date '+%y%m%d%H%M' to get the current timestamp.
Create memory/research-deep - <timestamp> - <claim>.md with:
budget, budget_type, budget_spent)Commit immediately.
Present the area outline to the user:
Research plan for [topic]:
1. [Area 1] — brief description
2. [Area 2] — brief description
...
Starting with Area 1. I'll update the file after each area.
continue?
For each area:
active=> notesdonebudget_spent in frontmatterSub-areas use decimal numbering at the same heading level — hierarchy is in the number, not the markdown structure:
### Area 1 - Type theory foundations - status: done
### Area 1.1 - Hindley-Milner inference - status: open
### Area 1.1.1 - Algorithm W variants - status: open
### Area 2 - Gradual typing - status: open
Budget awareness — after completing each area, check the budget:
=> would explore with more budget: [description].After each area, give a brief status update:
Area X done: [one-line summary of findings]
Budget: N/M spent [soft|hard]
Threads: [any new areas discovered]
Moving to Area Y.
After every 2-3 areas, pause for the user:
Progress: X/Y areas complete. Budget: N/M spent [soft|hard].
[Brief summary of what's emerging across areas]
continue?
If earlier areas reveal that the research direction needs to change:
After all areas are explored:
completeShow the synthesis (not the full file) and offer:
Deep research complete: [[research-deep - <timestamp> - <claim>]]
[Key synthesis points]
Options:
1 - Act on implications (create specs, decisions, etc.)
2 - Go deeper on [specific area or thread]
3 - Done for now
Search memory/ for research-deep - *.md files with status not complete or superseded.
Single active research-deep: load it directly. Multiple active: present a selection list. None active: offer to start a new one.
Read the research-deep file thoroughly. Determine:
If an area is in progress (status: active):
Resuming: [[research-deep - <timestamp> - <claim>]]
**Area N: [name]** — [M/T research plan items done]
Last finding: [brief summary]
Continuing with next research plan item.
Proceed?
If current area is done, next area is open:
Resuming: [[research-deep - <timestamp> - <claim>]]
Progress: X/Y areas complete.
Last area: [name] — [key finding]
Open threads: [any unspawned threads]
Next: Area N - [name]
Proceed, or adjust trajectory?
If all areas are done:
Resuming: [[research-deep - <timestamp> - <claim>]]
All Y areas complete.
[Brief overview of what emerged]
Ready to write Synthesis and Implications.
Proceed?
Then continue with the relevant step from Start Mode (step 3, 4, or 5).
Progressive externalisation over end-of-research dumps. Write sources and findings as you go. The file is a living document during research, not a report written at the end. This preserves detail and lets the user redirect mid-research.
Area independence. Each area should be understandable on its own. A reader can skip to one area and get its conclusions without reading the rest.
Threads are first-class. When researching one area reveals something about another, capture it. Threads are how the recursive structure emerges — they connect areas and spawn new ones.
Trajectory is mutable. The initial outline is a hypothesis. What you learn in Area 1 may completely reshape what matters in Area 5. Document the evolution — don't pretend you knew the right areas from the start.
Synthesis earns its place. Cross-area synthesis should say things that no single area says. If the synthesis is just "Area 1 found X, Area 2 found Y" — it's not synthesis.
memory/research-deep - <timestamp> - <claim>.mdactive, set to complete when donedevelopment
--- tldr: Check the status of messages you sent to peer inboxes category: core --- # /eidos:outbox Find messages **you sent** to peer repos and report their status. Your sent messages live in the peers' inboxes, not here. So this skill sweeps every registered peer and reads back what became of them. This is the mirror of [[spec - inbox skill - read and act on your own inbox]]. - The inbox is messages others sent **to** you. You own and edit it. - The outbox is messages you sent **to** others.
development
--- tldr: Send a message to a peer repo's inbox category: core --- # /eidos:message Write a message into another repo's `agent-inbox/`. The recipient is a peer repo, addressed by its registered name. See [[spec - agent communication - cross repo inboxes with append only messages and registry resolution]]. ## Usage ``` /eidos:message [recipient repo] [what to say] ``` ## Instructions ### 1. Resolve the recipient - Identify the recipient repo name. Ask if not given. - Resolve its path: `
development
--- tldr: Read and act on your own inbox category: core --- # /eidos:inbox List and work through messages other repos have left in your `agent-inbox/`. You own this inbox. You may edit its files freely. Agents from other repos may push **new** messages into your inbox at any time. They never edit existing files. Only you do. So re-check the inbox. Don't assume it is unchanged since you last looked. See [[c - foreign agents append to an inbox - only the owner edits in place]]. See [[spec - ag
tools
--- tldr: Move done files into archive subdirs (memory/ and agent-inbox/) category: utility --- # /eidos:archive Retire finished files into the `archive/` sibling of their directory. Done `memory/` files into `memory/archive/`, done inbox messages into `agent-inbox/archive/`. A `git mv`, never a rename. The basename is preserved, so wiki links keep resolving. See [[c - archiving moves done files into an archive subdir preserving basename and links]]. ## Usage ``` /eidos:archive [optional fil