ソース情報
- リポジトリ
- BEKO2210/Firstbrain
- ソースの最終更新活動
- 2026年5月17日 12:40
- 検出された SKILL.md の言語
- 英語
- スター
- 15
- フォーク
- 2
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/BEKO2210/Firstbrain --skill createコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
Arquitecto de Soluciones Principal y Consultor Tecnológico de Andru.ia. Diagnostica y traza la hoja de ruta óptima para proyectos de IA en español.
Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.
Ingeniero de Sistemas de Andru.ia. Diseña, redacta y despliega nuevas habilidades (skills) dentro del repositorio siguiendo el Estándar de Diamante.
SOC 職業分類に基づく
SKILL.md を表示中
| name | create |
| trigger | /create |
| description | Create a new note from template with filled frontmatter and wiki-link suggestions |
| version | 3.0.0 |
| type | skill |
| tags | ["skill","agent","creation","templates","notes"] |
Creates a new note by selecting the appropriate template, filling frontmatter, substituting all template variables, suggesting wiki-links to related notes, and placing the file in the correct target folder. Supports all 12 note types defined in the vault.
Invocation style: Hybrid -- natural language when intent is clear, guided prompts when ambiguous. Show-and-proceed transparency: Claude announces template selection and target folder, then creates without waiting for confirmation.
Natural language (Claude infers type and title):
"create a tool note about Docker" -> type=tool, title=Docker
"new project for Website Relaunch" -> type=project, title=Website Relaunch
"add a zettel about emergent behavior" -> type=zettel, title=Emergent Behavior
"log meeting with Sarah about Q2 plans" -> type=meeting, title=Sarah Q2 Plans
Explicit invocation:
/create tool Docker
/create project Website Relaunch
/create decision API Strategy
Guided (when ambiguous):
/create
Claude asks: "What type of note? (project, area, resource, tool, zettel, person, decision, meeting, code-snippet, daily, weekly, monthly)" then asks for the title.
| Type | Template File | Target Folder | Filename Prefix | Example Filename |
|---|---|---|---|---|
| project | Project.md | 01 - Projects/ | (none) | Website Relaunch.md |
| area | Area.md | 02 - Areas/ | (none) | Health.md |
| resource | Resource.md | 03 - Resources/ | (none) | Book -- Clean Code.md |
| tool | Tool.md | 03 - Resources/ | Tool -- | Tool -- Docker.md |
| zettel | Zettel.md | 03 - Resources/ | Zettel -- | Zettel -- Emergent Behavior.md |
| person | Person.md | 03 - Resources/ | Person -- | Person -- Sarah Chen.md |
| decision | Decision.md | 01 - Projects/ | Decision -- | Decision -- API Strategy.md |
| meeting | Meeting.md | 01 - Projects/ | Meeting -- | Meeting -- Standup 2026-03-07.md |
| code-snippet | Code Snippet.md | 03 - Resources/ | Snippet -- | Snippet -- Quicksort.md |
| daily | Daily Note.md | 00 - Inbox/Daily Notes/ | (none) | 2026-03-07.md |
| weekly | Weekly Review.md | 00 - Inbox/ | (none) | Weekly Review 2026-03-07.md |
| monthly | Monthly Review.md | 00 - Inbox/ | (none) | Monthly Review 2026-03-07.md |
Claude follows these steps when /create is invoked:
Ensure fresh indexes: Call ensureFreshIndexes('.') to refresh vault indexes if stale (older than 5 minutes).
Determine note type: Parse user input to identify the note type. If ambiguous, ask the user to specify from the 12 available types.
Look up template info: Call getTemplateInfo(type) to get the template filename, target folder, and filename prefix.
Read template file: Load template content from 05 - Templates/{template}.
Compute date variables: Call getDateVars(today) to get { date, yesterday, tomorrow, time }.
Build filename: Call buildFileName(type, title, date) to construct the correct filename per naming conventions.
Substitute template variables: Call substituteVariables(content, vars) with vars = { date, title, time, yesterday, tomorrow }. This handles:
{{date}}, {{title}}, {{time}}, {{yesterday}}, {{tomorrow}}{{date:YYYY-MM-DD}}, {{date:MMMM YYYY}}, {{date:ww}}, {{date:YYYY}}Load vault indexes: Read vault-index.json and tag-index.json from .claude/indexes/.
Suggest wiki-links: Call suggestWikiLinks(type, tags, vaultIndex, tagIndex) to generate 3-5 ranked suggestions based on shared tags, with the relevant MOC boosted (+2 score).
Write note file: Write the substituted content to {folder}/{filename}.
Check MOC format: Call mocUsesDataview('.', mocPath) on the relevant MOC. If the MOC uses Dataview queries, the note will appear automatically via its frontmatter type/tags. If the MOC is static (no Dataview), add a wiki-link to the MOC (AUTO zone governance).
Re-scan: Call to update indexes with the new note.
const { ensureFreshIndexes, getTemplateInfo, buildFileName, getDateVars,
substituteVariables, suggestWikiLinks, mocUsesDataview } = require('./.agents/skills/create/create-utils.cjs');
const { scan } = require('./.agents/skills/scan/scanner.cjs');
const { loadJson } = require('./.agents/skills/scan/utils.cjs');
const fs = require('fs');
const path = require('path');
// 1. Ensure indexes are fresh
ensureFreshIndexes('.');
// 2-3. Determine type and get template info
const type = 'tool'; // from user input
const title = 'Docker';
const info = getTemplateInfo(type);
// info = { template: 'Tool.md', folder: '03 - Resources', prefix: 'Tool -- ' }
// 4. Read template
const templateContent = fs.readFileSync(path.join('05 - Templates', info.template), 'utf8');
// 5. Compute date vars
const today = new Date().toISOString().slice(0, 10); // YYYY-MM-DD
const vars = getDateVars(today);
vars.title = info. + title;
filename = (type, title, today);
content = (templateContent, vars);
vaultIndex = ();
tagIndex = ();
suggestions = (type, [], vaultIndex, tagIndex, );
targetPath = path.(info., filename);
fs.(targetPath, content, );
usesDataview = (, );
();
scan('.')Report to user: Announce: