refactor: moved org-agent to its own repository as a submodule
This commit is contained in:
53
system/skills/AtomicNotes.org
Normal file
53
system/skills/AtomicNotes.org
Normal file
@@ -0,0 +1,53 @@
|
||||
#+TITLE: SKILL: Atomic Notes (Zettelkasten) (Permanent Knowledge)
|
||||
#+author: Amero Garcia
|
||||
#+created: [2026-03-16 Mon 14:28]
|
||||
#+ID: skill-atomic-notes
|
||||
#+DATE: 2026-03-11
|
||||
#+STARTUP: content
|
||||
|
||||
* Philosophy
|
||||
Atomic notes. Stand-alone knowledge. Linked by ideas, not categories. Use the second-degree connection to build a brain.
|
||||
|
||||
* The Workflow
|
||||
|
||||
** 1. Fleeting Notes (`$MEMEX_DAILY/`)
|
||||
- Temporary captures from today's sessions or conversations.
|
||||
- Put these in the daily file: `YYYY-MM-DD.org`.
|
||||
- Don't worry about structure; just get the facts down.
|
||||
|
||||
** 2. Literature Notes (`$MEMEX_RESOURCES/`)
|
||||
- Summaries of external material (books, articles, podcasts) in your own words.
|
||||
- Always include a source link.
|
||||
|
||||
** 3. Permanent Notes (`$MEMEX_NOTES/`)
|
||||
- *Atomic:* Each note covers exactly ONE concept or idea.
|
||||
- *Stand-alone:* A developer or researcher should understand it without context.
|
||||
- *Linked:* Every new note must link to at least one existing note. Look for non-obvious connections.
|
||||
|
||||
** 4. Structuring
|
||||
- Use `ID` properties for Org-roam style linking.
|
||||
- Avoid deep folder hierarchies; let the links provide the structure.
|
||||
- Review and prune. Knowledge that isn't connected is forgotten.
|
||||
|
||||
** 5. Discovery
|
||||
- When researching a new topic, always search the existing Atomic Notes (Zettelkasten) first.
|
||||
- Link new findings to old assumptions.
|
||||
- Identify "Second-Degree" connections (A -> B, B -> C, therefore A -> C).
|
||||
|
||||
* The Distillation Pipeline
|
||||
|
||||
** 6. Nightly Distillation
|
||||
- Dailies (`$MEMEX_DAILY/`) are raw, immutable logs. They are never destructively modified during processing.
|
||||
- A state file (`$MEMEX_SYSTEM/distillation-state.json`) tracks the last processed Git commit hash.
|
||||
- **Process:**
|
||||
1. Read state file for the last processed commit.
|
||||
2. Diff `$MEMEX_DAILY/` since that commit to identify new Atomic Notes (Zettelkasten) captures.
|
||||
3. Extract these captures.
|
||||
4. Generate a descriptive, concept-based filename (e.g., `proof_of_work.org`). *NO DATES IN PERMANENT FILENAMES.*
|
||||
5. Create the new atomic note in `$MEMEX_NOTES/` with an `#+ID` and a `Source:` link pointing back to the specific daily log heading.
|
||||
6. Update `distillation-state.json` with the new commit hash.
|
||||
|
||||
** 7. Weekly Interlinking (Maintenance)
|
||||
- A deeper pass over the graph in `$MEMEX_NOTES/`.
|
||||
- Goal: Find orphaned notes, merge conceptually similar notes, flesh out stubs, and establish new connections.
|
||||
- Constraint: Ensure notes maintain their evergreen, atomic nature even when expanded. Do not let them turn into sprawling essays.
|
||||
37
system/skills/GTD.org
Normal file
37
system/skills/GTD.org
Normal file
@@ -0,0 +1,37 @@
|
||||
#+TITLE: SKILL: Getting Things Done (GTD)
|
||||
#+author: Amero Garcia
|
||||
#+created: [2026-03-16 Mon 14:28]
|
||||
#+ID: skill-gtd
|
||||
#+DATE: 2026-03-11
|
||||
#+STARTUP: content
|
||||
|
||||
* Philosophy
|
||||
Capture everything. Clarify the next action. Organize into projects. Reflect regularly. Engage with confidence.
|
||||
|
||||
* The Workflow
|
||||
|
||||
** 1. Capture (Inbox)
|
||||
- Everything that enters your awareness goes into `memex/0_inbox/`.
|
||||
- No friction. No filtering. Just get it out of the user's head.
|
||||
|
||||
** 2. Clarify (Process)
|
||||
- Review the Inbox daily.
|
||||
- Is it actionable?
|
||||
- *No:* Trash it, Archive it (`6_reference`), or Incubate it (`memex/gtd.org` under `* Incubate`).
|
||||
- *Yes:* What's the next action?
|
||||
- If <2 minutes, DO IT NOW.
|
||||
- If it's a project (>1 step), add to `memex/gtd.org` under `* Projects` and create a dedicated project folder in `5_projects/` if detailed planning is needed.
|
||||
- If it's for someone else, delegate and track in `memex/gtd.org`.
|
||||
|
||||
** 3. Organize
|
||||
- *GTD Hub:* All Actions, Projects, Incubate items, and Habits go to `memex/gtd.org`. This is the single source of truth for your Emacs agenda and `org-gtd`.
|
||||
- *Fleeting Notes:* Use `memex/1_daily/` for non-actionable thoughts or meeting notes from the day.
|
||||
- *Project Artifacts:* Deep work, technical specs, and drafts go to `5_projects/` or `3_drafts/`.
|
||||
- *Reference material:* Non-actionable knowledge goes to `6_reference/` or `2_notes/`.
|
||||
|
||||
** 4. Reflect (Review)
|
||||
- *Daily Review:* Process the inbox. Update `memex/gtd.org`.
|
||||
- *Weekly Review:* Review all projects in `memex/gtd.org`. Brainstorm new tasks. Clear the mental clutter.
|
||||
|
||||
** 5. Engage
|
||||
- Use `memex/gtd.org` and Emacs agenda to decide what to work on based on Context, Time, Energy, and Priority.
|
||||
41
system/skills/OrgMode.org
Normal file
41
system/skills/OrgMode.org
Normal file
@@ -0,0 +1,41 @@
|
||||
#+TITLE: SKILL: Org-Mode & Org-Roam (Technical Implementation)
|
||||
#+author: Amero Garcia
|
||||
#+created: [2026-03-16 Mon 14:28]
|
||||
#+ID: skill-org-mode
|
||||
#+DATE: 2026-03-11
|
||||
#+STARTUP: content
|
||||
|
||||
* Philosophy
|
||||
Plain text is forever. Structure is metadata. Everything is a node.
|
||||
|
||||
* Technical Implementation
|
||||
|
||||
** 1. Document Structure
|
||||
- *Headlines:* Use `*` for top-level, `**` for second-level, etc.
|
||||
- *Properties:* Every node (headline) that is intended to be an atomic note must have a `:PROPERTIES:` drawer.
|
||||
- *Unique IDs:* Use `:ID:` for Org-roam style linking (e.g., `:ID: 550e8400-e29b-41d4-a716-446655440000`).
|
||||
- *Dates:* Use `[YYYY-MM-DD Day HH:MM]` for inactive timestamps and `<YYYY-MM-DD Day HH:MM>` for active/scheduled ones.
|
||||
|
||||
** 2. Task Management (GTD)
|
||||
- *Hub:* Use `memex/gtd.org` for all TODOs, Projects, and Habits.
|
||||
- *Statuses:* `TODO`, `DOING`, `DONE` (with `CLOSED:`), `WAITING`, `SOMEDAY`.
|
||||
|
||||
** 3. File Naming
|
||||
- *Daily & Fleeting:* `memex/1_daily/YYYY-MM-DD.org`
|
||||
- *Atomic Notes:* `memex/2_notes/slug-of-the-concept.org`
|
||||
- *Projects:* `memex/5_projects/ProjectName/SPEC.org`
|
||||
|
||||
** 4. Code Blocks
|
||||
- Use `#+BEGIN_SRC <language>` and `#+END_SRC` for all code snippets.
|
||||
- Use `#+RESULTS:` to capture output when running code within Org-mode (Babel).
|
||||
|
||||
** 6. Binary Management (org-attach)
|
||||
- **Philosophy:** Treat binaries (PDFs, images, data) as first-class citizens linked to symbolic nodes. Never use fragile local file paths.
|
||||
- **The Protocol (System 2):**
|
||||
1. **Identify the Host Node:** Every attachment must be linked to a specific Org headline (e.g., in `memex/gtd.org` or a Literature Note).
|
||||
2. **Generate Native ID:** Use `(org-id-get-create)` via Emacs to ensure the node has a globally unique, persistent identifier.
|
||||
3. **Perform the Attachment:** Use `(org-attach-attach "/path/to/file" nil 'mv)` to move the file into the ID-based storage.
|
||||
4. **Linking:** Use `[[attachment:filename.ext]]` for all internal references. This ensures the link survives if the file or node is moved.
|
||||
- **Storage Root:** The system-wide attachment directory is `$MEMEX_ATTACHMENTS` (typically `memex/7_resources/` or `memex/attachments/`).
|
||||
|
||||
** 7. Learning Rituals (Closing the Loop)
|
||||
29
system/skills/Scribe-Agent.org
Normal file
29
system/skills/Scribe-Agent.org
Normal file
@@ -0,0 +1,29 @@
|
||||
#+TITLE: SKILL: Scribe Agent (Distillation Sub-Agent)
|
||||
#+ID: skill-scribe-agent
|
||||
#+STARTUP: content
|
||||
|
||||
* Overview
|
||||
The Scribe Agent is an automated distillation sub-agent designed to process raw daily captures into permanent atomic notes for the Atomic Notes (Zettelkasten). It runs as an isolated OpenClaw cron job.
|
||||
|
||||
* Configuration
|
||||
- **Type:** OpenClaw Cron Job
|
||||
- **Target:** `isolated`
|
||||
- **Model:** `CURRENT_TEXT_MANIPULATION_MODEL` (Updates periodically based on review; currently an efficient LLM suitable for text parsing).
|
||||
- **Environment:** Loads variables from `.env` to locate folders (e.g., `$MEMEX_DAILY`, `$MEMEX_NOTES`, `$MEMEX_SYSTEM`).
|
||||
|
||||
* System Prompt / Agent Turn Directive
|
||||
```markdown
|
||||
You are the Scribe, an automated distillation sub-agent.
|
||||
Your sole job is to process raw notes into a Atomic Notes (Zettelkasten).
|
||||
Do not engage in conversation. Only execute the following pipeline:
|
||||
|
||||
1. Read `$MEMEX_SYSTEM/distillation-state.json` to get the last processed Git commit hash.
|
||||
2. Run `git diff <last_commit_hash> HEAD -- $MEMEX_DAILY/` to find new captures.
|
||||
3. For every new Atomic Notes (Zettelkasten) capture found in the diff:
|
||||
a. Read the raw capture.
|
||||
b. Determine the core concept.
|
||||
c. Generate a concise, snake_case filename (e.g., `core_concept_name.org`).
|
||||
d. Write the content to `$MEMEX_NOTES/<filename>`, ensuring it is formatted as an atomic Org-mode note with `#+ID` and a `Source:` backlink to the daily file.
|
||||
4. Update `$MEMEX_SYSTEM/distillation-state.json` with the current HEAD commit hash.
|
||||
5. Exit.
|
||||
```
|
||||
Reference in New Issue
Block a user