Timeln find
6 SKILLs to improve Claude Code memory, derived from Timeln's second brain capability to remember everything.
npx -y skills add Timelnapp/skills --skill timeln-findAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Trigger on "search my memory", "look up in my memory", "recall from my notes", "second brain", "thinking partner", "what should I learn today", "connect my ideas", "show my knowledge gaps", "build a knowledge graph", "what's in my brain", or any question prefixed with "based on my past data" / "from my knowledge graph". Use for open-ended search, synthesis, and exploration over the user's Timeln memory. NOT for quick mid-call recall (use timeln-quickly), past decisions (use timeln-decided), or weekly planning (use timeln-plan).
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.8 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it
Timeln Find -- Search Your Second Brain
Search and recall over the user's real Timeln memory. When triggered, silently pull live data via the Timeln MCP, synthesize across MECE + PARA, and return sharp, actionable insight. No hallucination -- only real nodes and edges.
Setup (one-time, user-side)
- Sign up free at https://timeln.app/signup.
- Get an API token: Settings -> API Tokens -> Create in the dashboard.
- Add the hosted MCP to your agent config.
Claude Code (~/.claude.json) or Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"timeln": {
"url": "https://timeln-mcp-production.up.railway.app/mcp",
"headers": {
"Authorization": "Bearer tln_YOUR_TOKEN_HERE"
}
}
}
}
No Python install required -- the MCP is hosted.
If tln_... is missing or invalid, MCP tools return a signup nudge -- surface that verbatim to the user.
MCP tools you will call
| Tool | Purpose |
|---|---|
whoami | Confirm token + return email/plan. Always call first. |
get_recent_docs(window) | Last 7 days (weekly) or 30 days (monthly) of ingested docs. |
search_documents(limit, offset) | Paginated list of all user documents. |
get_document(doc_id) | Fetch a single document by id (with preview). |
query_knowledge(question) | Natural-language query over the user's KG + documents. |
get_topic_entities(topic) | Entities/sources clustered around a topic keyword -- use for MECE gap analysis. |
ingest_text(text, title?) | Add new text content. |
ingest_url(url, title?) | Add a public URL. |
Do not reimplement these -- always go through the MCP.
Workflow
Step 1 -- Identify the user
Call whoami. If it errors with "no token" / "Unauthorized", return the signup message and stop.
Step 2 -- Pull recent context
Call get_recent_docs(window="monthly"). Extract topic clusters, PARA categories (project/area/resource/archive), recency.
Step 3 -- Pull knowledge-graph signal
For each dominant topic from Step 2, call get_topic_entities(topic="...") to get entity clusters and their sources. For direct NL questions, call query_knowledge(question="...").
Step 4 -- Synthesize with MECE + PARA
MECE gap analysis -- map entities into four quadrants:
| Quadrant | Test | Finding |
|---|---|---|
| Known | High-frequency entities across many sources | Core expertise |
| Emerging | Mid-frequency, recent ingestions | Growing areas |
| Isolated | Few sources, weak cross-links | Latent gaps |
| Missing | Topics implied by adjacency but absent | Blind spots |
For each gap, write: [Node A] -> SHOULD CONNECT TO -> [Node B] -- backed by real data.
PARA classification from each doc's para_category field:
- Projects -- active, time-bound -> ship today
- Areas -- ongoing responsibilities -> maintain
- Resources -- reference material -> learn from
- Archive -- noise -> stop
Step 5 -- Optional: interactive visualization
If the user asks for a graph, visual, or map (e.g. "show my knowledge graph", "visualise my brain", "plot my topics"), the skill handles everything -- no scripts to run:
- Call
get_topic_entitiesfor each relevant topic surfaced in steps 3-4. - Merge results into
{nodes, links}-- each node is an entity, each link is a relationship or shared document. - Inject the graph data into
kg_interactive_template.html(replace__GRAPH_DATA__) and write the result askg_interactive.htmlin the workspace root. - Open the file so the user sees it immediately.
The user never leaves the chat window -- just ask in natural language and the skill produces a ready-to-open HTML file.
Output format (always)
## Your Brain, Right Now
[1-2 sentence synthesis of what the data shows you're building]
## MECE Map
| | Connected | Isolated |
|---|---|---|
| **Known** | [real nodes] | [real gaps] |
| **Emerging** | [real nodes] | [missing bridges] |
## PARA -- What to Do Today
**Project (ship):** [1-3 hr action tied to a real project node]
**Area (deepen):** [real concept to go deeper on]
**Resource (learn):** [specific saved doc you haven't connected yet]
**Archive (stop):** [what's noise -- backed by data]
## The One Sentence
> [Single sharpest insight from the data]
Handling specific questions
When the user asks a concrete question (not a general "second brain" prompt):
query_knowledge(question="<their question>")-- NL over their graph + documents.search_documentsorget_recent_docsfor titles to cite.- Synthesize both into a direct answer -- cite real titles/entity names, no fabrication.
Rules
- Always go through MCP tools. Never call infrastructure directly.
- Never fabricate node names, titles, or relationships. If a tool returns nothing, say so.
- Never include the user's API token in any output or tool echo.
Common failure modes
| Rationalization | Why it's wrong |
|---|---|
| "The MCP returned thin results, I'll supplement from training data" | Say the data is thin. Never mix real memory with invented knowledge. |
| "MECE analysis is overkill for this question" | If it's a simple factual question, it should have gone to timeln-quickly. If it's here, do the full synthesis. |
| "I'll skip the PARA breakdown since the user just asked a question" | For direct questions, use the "Handling specific questions" path. PARA/MECE is for exploratory prompts. |
| "No graph was requested, but a visualization would be nice" | Only generate the D3 graph when explicitly asked. Don't pad the response. |
| "I'll fabricate node names to fill gaps in the MECE map" | Every node and edge must trace to real MCP data. Empty quadrants are valid. |
This is a flexible skill. Adapt the depth of synthesis to the question, but never fabricate data.