원클릭으로
ingest
Route content to specialized ingestion skills. Detects input type and delegates.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Route content to specialized ingestion skills. Detects input type and delegates.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Reference skill demonstrating the 10/10 skillpack contract. Adds a "what does this skillpack do" answer to the user's agent.
Post-call handling for a voice session — turn the transcript into a brain page, post the summary to the operator's messaging surface, archive the audio. Belt-and-suspenders: fires both from a tool the voice persona can call mid-call AND from the automatic call-end handler in server.mjs.
Verify a research claim or academic citation by tracing it through publication → methodology → raw data → independent replication. Routes through perplexity-research for the actual web lookup, then formats results as a citation-checked brain page. Use when a book/article/conversation cites a study and you want to confirm the claim is real, replicated, and accurately characterized.
Universal archivist for personal file archives (Dropbox/B2/Gmail-takeout/local-mount/hard-drive-dump). Filters for high-value content (the user's own writing, ideas, relationships) and surfaces it interactively. REFUSES TO RUN without an explicit inbrain.yml `archive-crawler.scan_paths:` allow-list.
Transform raw article text dumps in the brain into structured pages with executive summary, verbatim quotes, key insights, why-it-matters, and cross-references. Replaces walls-of-text with quotable, actionable brain pages.
Reusable pattern for presenting the user with explicit choices and gating execution until they respond. Used by other skills when a decision point requires human input before proceeding. Platform-agnostic — works on Telegram (inline buttons), Discord, CLI, or any agent with a message tool.
| name | ingest |
| description | Route content to specialized ingestion skills. Detects input type and delegates. |
| triggers | ["ingest this","save this to brain","process this meeting"] |
| tools | ["search","get_page","put_page","add_link","add_timeline_entry","sync_brain"] |
| mutating | true |
| writes_pages | true |
| writes_to | ["people/","companies/","concepts/","meetings/","sources/"] |
Ingest meetings, articles, media, documents, and conversations into the brain.
Filing rule: Read
skills/_brain-filing-rules.mdbefore creating any new page.
[Source: ...] citation with date and provenance.inbrain files upload-raw with automatic size routing.Convention: See
skills/conventions/quality.mdfor Iron Law back-linking.
Every mention of a person or company with a brain page MUST create a back-link
FROM that entity's page TO the page mentioning them. An unlinked mention is a
broken brain. See skills/_brain-filing-rules.md for format.
Every fact written to a brain page must carry an inline [Source: ...] citation.
[Source: User, {context}, YYYY-MM-DD][Source: Meeting "{title}", YYYY-MM-DD][Source: email from {name} re: {subject}, YYYY-MM-DD][Source: {publication}, {URL}, YYYY-MM-DD][Source: X/@handle, YYYY-MM-DD](URL) (include link)[Source: compiled from {sources}]Router note: This skill is a router. For specialized ingestion, see: idea-ingest, media-ingest, meeting-ingestion.
Production agents should detect entity mentions on EVERY inbound message. This is the signal detection loop that makes the brain compound over time.
inbrain search "name" -- does a page already exist?inbrain get <slug>. Use the compiled truth to
inform your response. Update the page if the message contains new information.skills/_brain-filing-rules.md). If the entity
is worth tracking, create a new page with inbrain put <type/slug> and populate
with what you know.inbrain sync --no-pull --no-embed
skills/_brain-filing-rules.md for the full notability gateOriginal thinking is the most valuable signal. Capture exact phrasing -- the user's language IS the insight. Don't paraphrase.
Content the user encounters should be captured in the brain. File by PRIMARY
SUBJECT, not by format (see skills/_brain-filing-rules.md).
Input: URL shared by user, or article mentioned in conversation.
Process:
web_fetch or equivalent)Write to: appropriate directory per filing rules (about a person -> people/,
about a company -> companies/, reusable framework -> concepts/, raw data -> sources/)
Input: URL (YouTube, podcast, etc.) or local audio/video file.
Process:
Write to: media/videos/ or media/podcasts/ with back-links to all entities.
Quality bar:
Input: File path or URL.
Process:
Write to: per filing rules (file by primary subject, not format).
Input: Image file.
Process:
Write to: depends on content -- route to the appropriate workflow above.
Input: Transcript from meeting recording service, or manual notes.
Process:
Write to: meetings/YYYY-MM-DD-short-description.md
What makes a good meeting page:
Input: Tweet, thread, or social media post.
Process:
Write to: media/x/ for daily aggregation, or entity-specific directories
if the post is primarily about a person/company.
Every ingested item must have its raw source preserved for provenance.
Use inbrain files upload-raw for automatic size routing:
inbrain files upload-raw <file> --page <page-slug> --type <type>
.raw/ sidecar directories).redirect.yaml pointer left in the brain repoThe .redirect.yaml pointer format:
target: supabase://brain-files/page-slug/filename.mp4
bucket: brain-files
storage_path: page-slug/filename.mp4
size: 524288000
size_human: 500 MB
hash: sha256:abc123...
mime: video/mp4
uploaded: 2026-04-11T...
type: transcript
Accessing stored files:
inbrain files signed-url <storage-path> -- generate 1-hour signed URL for viewing/sharinginbrain files restore <dir> -- download back to local from cloud storageUse put_raw_data in inbrain to store raw API responses and metadata (JSON, not binary).
When processing multiple items (batch video ingestion, bulk meeting processing, etc.):
The marginal cost of testing 3 items first is near zero. The cost of cleaning up 100 bad pages is enormous.
INGESTED: [title]
==================
Page: [slug]
Type: [person / company / meeting / media / concept]
Source: [source description]
Entities detected: N
- [entity] -> [created / updated] ([slug])
Back-links created: N
Timeline entries: N
Raw source: [preserved at path / uploaded to cloud]