REFAC: Shift terminology to Autonomy and harden CLI via socat
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
#+TITLE: Changelog
|
||||
#+STARTUP: content
|
||||
|
||||
* v0.1.0 - The Sovereign Foundation (2026-04-13)
|
||||
* v0.1.0 - The Autonomous Foundation (2026-04-13)
|
||||
This is the initial MVP release of the ~org-agent~. It establishes a secure, auditable Lisp kernel for a personal operating system.
|
||||
|
||||
** Features
|
||||
@@ -9,7 +9,7 @@ This is the initial MVP release of the ~org-agent~. It establishes a secure, aud
|
||||
- **Verification Lock:** Mandatory skill enforcement via environment configuration. System halts if security policies or bouncers fail to load.
|
||||
- **Foveal-Peripheral Context:** High-resolution focus on active tasks with low-resolution skeletal awareness of the rest of the Memex.
|
||||
- **The Bouncer:** Last-mile deterministic security gate with Deep Packet Inspection for secrets and network exfiltration.
|
||||
- **Sovereign Scribe:** Background distillation worker that turns daily journal entries into evergreen Zettelkasten notes.
|
||||
- **Autonomous Scribe:** Background distillation worker that turns daily journal entries into evergreen Zettelkasten notes.
|
||||
- **Unified Onboarding:** Single-command installation (~org-agent.sh~) with Docker-first deployment and OS detection.
|
||||
- **CLI Gateway:** Local TCP socket server and interactive chat client for frictionless first contact.
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@ ENV DEBIAN_FRONTEND=noninteractive
|
||||
# - curl/git/unzip: Standard tools for Quicklisp and binaries
|
||||
# - default-jre: Required by signal-cli
|
||||
# - python3/pip: Required for Playwright bridge
|
||||
# - socat: Required for stateful CLI interaction
|
||||
RUN apt-get update && apt-get install -y \
|
||||
sbcl \
|
||||
curl \
|
||||
@@ -20,6 +21,7 @@ RUN apt-get update && apt-get install -y \
|
||||
python3-pip \
|
||||
python3-venv \
|
||||
emacs-nox \
|
||||
socat \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# 2. Setup Playwright (High-Fidelity Browsing)
|
||||
|
||||
11
README.org
11
README.org
@@ -109,17 +109,20 @@ The agent meets you where you are. While it natively integrates with text editor
|
||||
|
||||
* Quick Start (The Zero-to-One Experience)
|
||||
|
||||
org-agent can be installed and booted with a single command. The unified entrypoint script will detect your OS, offer to install Docker if missing, interactively gather your API keys, and launch the sovereign kernel in the background.
|
||||
org-agent can be installed and booted with a single command. The unified entrypoint script will detect your OS, offer to install Docker if missing, interactively gather your API keys, and launch the autonomous kernel in the background.
|
||||
|
||||
#+begin_src bash
|
||||
curl -fsSL https://raw.githubusercontent.com/gharbeia/org-agent/main/org-agent.sh | bash
|
||||
#+end_src
|
||||
|
||||
After installation, simply type `org-agent` in your terminal to start chatting with your sovereign brain.
|
||||
After installation, simply type `org-agent` in your terminal to start chatting with your autonomous brain.
|
||||
|
||||
For power users who wish to run the agent natively (Baremetal), please refer to the [[file:literate/setup.org][setup.org]] literate documentation.
|
||||
|
||||
* The Evolutionary Roadmap (v1.0.0 to v4.0.0+)
|
||||
* The Evolutionary Roadmap (v0.1.0 to v4.0.0+)
|
||||
|
||||
** v0.1.0: The Autonomous Foundation (Current Release)
|
||||
The initial MVP that establishes a secure, auditable Lisp kernel for a personal operating system. It features a robust metabolic pipeline, mandatory skill enforcement, and background distillation.
|
||||
|
||||
** v1.0.0 (Phase 2.5): The Verified Wrapper (Current Target)
|
||||
At this stage, org-agent achieves feature parity with State-of-the-Art autonomous agents (like Devin or SWE-agent) but with Lisp-grade mathematical security.
|
||||
@@ -140,7 +143,7 @@ The great inversion. The Lisp engine takes the wheel, and the LLM is relegated t
|
||||
- *Self-Correcting Syntax:* The Lisp engine catches and repairs hallucinated syntax errors without consulting the LLM.
|
||||
|
||||
** v4.0.0+ (Phase 5): The Neurosymbolic Singularity
|
||||
The ultimate vision realized. The agent achieves homoiconic sovereignty.
|
||||
The ultimate vision realized. The agent achieves homoiconic autonomy.
|
||||
- *Homoiconic Self-Writing:* The agent inspects its own literate source code, proposes optimizations, formally verifies them, and hot-reloads itself at runtime.
|
||||
- *Asynchronous Swarm Cognition:* The agent spawns isolated sub-agents in jailed Lisp packages to solve sub-tasks in parallel.
|
||||
- *The Digital Extension of Self:* A perfect, asynchronous operating system for your digital life, managing the Memex with zero structural degradation.
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
#+TITLE: v0.1.0 Launch & Marketing Plan
|
||||
#+AUTHOR: Amr
|
||||
#+FILETAGS: :marketing:release:psf:
|
||||
#+FILETAGS: :marketing:release:autonomy:
|
||||
#+STARTUP: content
|
||||
|
||||
* Overview
|
||||
With the v0.1.0 "Sovereign MVP" released, the goal is to leverage GitHub's social graph to build a community of early adopters, contributors, and power users who resonate with the "Thin Harness, Fat Skills" and "Local-First" philosophy.
|
||||
With the v0.1.0 "Autonomous MVP" released, the goal is to leverage GitHub's social graph to build a community of early adopters, contributors, and power users who resonate with the "Thin Harness, Fat Skills" and "Local-First" philosophy.
|
||||
|
||||
* 1. Licensing Strategy
|
||||
Before wide promotion, the project's license must align with its goals.
|
||||
- **MIT License (Current):** Maximum adoption, frictionless for developers to embed in their own tools. Good for rapid growth.
|
||||
- **GPLv3 / AGPLv3:** Enforces copyleft. Ensures any modifications or integrations by corporations must remain open-source. Protects the "Sovereign" ethos from proprietary enclosure.
|
||||
- **GPLv3 / AGPLv3:** Enforces copyleft. Ensures any modifications or integrations by corporations must remain open-source. Protects the "Autonomous" ethos from proprietary enclosure.
|
||||
- **Dual Licensing:** Open-source for individuals, commercial license for enterprise usage (if monetization is a future goal).
|
||||
|
||||
*Decision Needed:* Do we stick with MIT, or switch to a copyleft license (AGPL) to protect the sovereign nature of the project?
|
||||
*Decision Needed:* Do we stick with MIT, or switch to a copyleft license (AGPL) to protect the autonomous nature of the project?
|
||||
|
||||
* 2. The GitHub Migration & Setup
|
||||
To maximize visibility, the repository must be optimized for GitHub's ecosystem.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#+TITLE: Quickstart Guide: The Road to Sovereignty
|
||||
#+TITLE: Quickstart Guide: The Road to Autonomousty
|
||||
#+AUTHOR: Amr
|
||||
#+DATE: [2026-04-11 Sat]
|
||||
#+FILETAGS: :quickstart:onboarding:guide:
|
||||
@@ -13,7 +13,7 @@ Before launching the harness, ensure your host environment has:
|
||||
- **Emacs (Optional)**: For the full literate experience via ~org-agent.el~.
|
||||
|
||||
* 3. Installation & Enclosure
|
||||
** Step 1: Clone the Sovereignty
|
||||
** Step 1: Clone the Autonomousty
|
||||
#+begin_src bash
|
||||
git clone https://github.com/amr/org-agent.git
|
||||
cd org-agent
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#+TITLE: Root Cause Analysis: Micro-Loader & Deterministic Boot Sequence
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:boot:loader:topological-sort:psf:
|
||||
#+FILETAGS: :rca:boot:loader:topological-sort:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Refactored the arbitrary skill loading mechanism into a robust **Micro-Loader**. The system now calculates a deterministic boot sequence based on `#+DEPENDS_ON:` tags and protects the harness from malformed or hanging skills via package-based jailing and execution timeouts.
|
||||
@@ -31,7 +31,7 @@ Skill loading was strictly synchronous and blocking on the main thread.
|
||||
** Resolution
|
||||
**Execution Timeouts:** Implemented `load-skill-with-timeout`, which wraps the loader in a monitored thread. If a skill takes longer than 5 seconds to initialize, the loader terminates the thread, jails the failure, and continues with the rest of the boot sequence.
|
||||
|
||||
* 4. PSF Mandate Alignment
|
||||
* 4. org-agent Mandate Alignment
|
||||
** Evolutionary Kernel
|
||||
The boot sequence is now a verifiable, mathematical process rather than a side-effect of filesystem organization.
|
||||
** Literate Granularity
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#+TITLE: Root Cause Analysis: Deterministic Engine Bouncer & Authorization Gate
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:bouncer:authorization:psf:security:
|
||||
#+FILETAGS: :rca:bouncer:authorization:autonomy:security:
|
||||
|
||||
* Executive Summary
|
||||
Implemented the "Planning Mode" Bouncer to intercept high-risk Probabilistic Engine proposals (e.g., shell commands, Lisp evaluation). The system now forces these actions into an asynchronous "Flight Plan" Org node for manual Sovereign approval, fulfilling the "everything is a node" and high-integrity mandates.
|
||||
Implemented the "Planning Mode" Bouncer to intercept high-risk Probabilistic Engine proposals (e.g., shell commands, Lisp evaluation). The system now forces these actions into an asynchronous "Flight Plan" Org node for manual Autonomous approval, fulfilling the "everything is a node" and high-integrity mandates.
|
||||
|
||||
* 1. Issue: Automated High-Risk Execution
|
||||
** Symptoms
|
||||
@@ -20,13 +20,13 @@ Architecture gap. The system lacked an authorization state between "Safe" and "E
|
||||
|
||||
* 2. Design Decision: Org-native Approval
|
||||
** Requirement
|
||||
Align with "Homoiconic Memory" and "Lisp Machine Sovereignty".
|
||||
Align with "Homoiconic Memory" and "Lisp Machine Autonomousty".
|
||||
** Selected Path
|
||||
State-Based Approval (Org-native).
|
||||
- *Pros:* Auditable, asynchronous, utilizes existing Org-mode workflows.
|
||||
- *Cons:* Slightly more latency than an interactive prompt.
|
||||
** Alignment
|
||||
Ensures that the agent's "Flight Plans" are first-class citizens in the Memex, allowing the Sovereign to review and approve them using standard GTD tools.
|
||||
Ensures that the agent's "Flight Plans" are first-class citizens in the Memex, allowing the Autonomous to review and approve them using standard GTD tools.
|
||||
|
||||
* 3. Permanent Learnings
|
||||
- **Serial Bypass:** Always include a specific bypass flag (e.g., `:approved t`) when re-injecting intercepted actions to prevent infinite interception loops.
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#+TITLE: Root Cause Analysis: Lisp-Native Formal Verification Gate
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:security:formal-verification:psf:
|
||||
#+FILETAGS: :rca:security:formal-verification:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Implemented a Lisp-Native Deterministic Prover to replace heuristic whitelisting with formal security invariants. This ensures that every high-impact action (shell, file I/O) is mathematically proven safe against the Sovereign's core mandates.
|
||||
Implemented a Lisp-Native Deterministic Prover to replace heuristic whitelisting with formal security invariants. This ensures that every high-impact action (shell, file I/O) is mathematically proven safe against the Autonomous's core mandates.
|
||||
|
||||
* 1. Architectural Shift: Native vs. External
|
||||
** Issue
|
||||
@@ -25,7 +25,7 @@ Incorrect assumption about the Quicklisp system name vs. the package name. The l
|
||||
- **Path Confinement:** Deterministically proves that any file operation or absolute path in a shell command is strictly within the `/home/user/memex` root.
|
||||
- **No Network Exfiltration:** Prevents the shell from invoking common exfiltration tools (`nc`, `ssh`, etc.) by inspecting the parsed command structure.
|
||||
|
||||
* 4. PSF Mandate Alignment
|
||||
* 4. org-agent Mandate Alignment
|
||||
** Soundness over Heuristics
|
||||
By moving to formal invariants, we have moved from "blacklisting bad things" to "proving safety." Any action that cannot be proven to satisfy all invariants is denied by default.
|
||||
** Literate Granularity
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#+TITLE: Root Cause Analysis: Matrix Gateway & Communication Track Completion
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:gateway:matrix:chat:psf:
|
||||
#+FILETAGS: :rca:gateway:matrix:chat:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Successfully implemented the third and final external communication channel (Matrix) for Org-agent v1.0. Resolved integration issues related to case-sensitivity in JSON keys and strict header requirements in `dexador`.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#+TITLE: Root Cause Analysis: Signal Gateway & Multi-Channel Chat
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:gateway:signal:chat:psf:
|
||||
#+FILETAGS: :rca:gateway:signal:chat:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Successfully implemented the second external communication channel (Signal) using `signal-cli`. Further hardened the multi-channel chat logic and resolved JSON mapping discrepancies between Common Lisp and external CLI outputs.
|
||||
@@ -22,7 +22,7 @@ Unlike Telegram's HTTP API, Signal requires a local binary (`signal-cli`).
|
||||
** Security
|
||||
The system uses the pre-configured Signal account `+13322690326` discovered in the user's memex.
|
||||
|
||||
* 3. Alignment with PSF Mandates
|
||||
* 3. Alignment with org-agent Mandates
|
||||
** Literate Granularity
|
||||
Strictly adhered to the "one definition per block" mandate throughout the new `org-skill-gateway-signal.org` file.
|
||||
** Verification
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#+TITLE: Root Cause Analysis: Telegram Gateway & Channel-Aware Chat
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:gateway:telegram:chat:psf:
|
||||
#+FILETAGS: :rca:gateway:telegram:chat:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Successfully implemented the first external communication channel (Telegram) and decoupled the Chat Agent from its Emacs-centric roots. Resolved significant load-order and dependency issues identified during integration.
|
||||
@@ -32,8 +32,8 @@ Misinterpretation of the `UIOP` API. `setenv` is not a standard export; the port
|
||||
** Resolution
|
||||
Updated all test environment setup to use the `setf` accessor.
|
||||
|
||||
* 4. PSF Mandate Alignment
|
||||
** Sovereign Boundary
|
||||
* 4. org-agent Mandate Alignment
|
||||
** Autonomous Boundary
|
||||
By moving the Telegram API logic to a user-space skill and communicating with the core via standard stimuli, we have respected the microkernel boundary.
|
||||
** Homoiconic Memory
|
||||
All Telegram interactions are now logged as `:chat-message` events, ensuring the agent's history is unified regardless of the platform.
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
#+TITLE: Root Cause Analysis: Containerized Infrastructure (Docker)
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:docker:deployment:infrastructure:psf:
|
||||
#+FILETAGS: :rca:docker:deployment:infrastructure:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Standardized the `org-agent` execution environment by creating a production-grade Docker infrastructure. This ensures that all system dependencies, including the Lisp runtime and external binaries like `signal-cli`, are locked down and portable.
|
||||
|
||||
* 1. Architectural Intent: The "Clean Room" Model
|
||||
** Problem
|
||||
The `org-agent` was relying on host-local binaries (`sbcl`, `signal-cli`) and manually configured Quicklisp dists. This made deployment to other environments (e.g., a VPS or a Sovereign Home Server) fragile and prone to version drift.
|
||||
The `org-agent` was relying on host-local binaries (`sbcl`, `signal-cli`) and manually configured Quicklisp dists. This made deployment to other environments (e.g., a VPS or a Autonomous Home Server) fragile and prone to version drift.
|
||||
** Solution
|
||||
1. **Dockerfile:** Created a multi-step build process that installs Debian Bookworm, SBCL, Java, and `signal-cli 0.14.0`.
|
||||
2. **Pre-Caching:** The build process triggers a `ql:quickload` of the `:org-agent` system, ensuring all Lisp dependencies are pre-downloaded and stored in the image layer, drastically reducing startup time.
|
||||
@@ -15,11 +15,11 @@ The `org-agent` was relying on host-local binaries (`sbcl`, `signal-cli`) and ma
|
||||
|
||||
* 2. Volume Mapping & Persistence
|
||||
** Strategy
|
||||
To maintain the "Sovereign" mandate, the agent's code is isolated, but its memory (the `memex`) remains on the host.
|
||||
To maintain the "Autonomous" mandate, the agent's code is isolated, but its memory (the `memex`) remains on the host.
|
||||
- **Mapping:** `../..` (host) -> `/memex` (container).
|
||||
- **State:** Created a named Docker volume `signal-state` to ensure that `signal-cli` identities and cryptographic keys survive container restarts and image updates.
|
||||
|
||||
* 3. Alignment with PSF Mandates
|
||||
* 3. Alignment with org-agent Mandates
|
||||
** Evolutionary Completion
|
||||
By moving to Docker, we have achieved "Evolutionary Completion" for the deployment track. The system is no longer a collection of scripts; it is a deployable appliance.
|
||||
** Documentation
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#+TITLE: Root Cause Analysis: Asynchronous Lisp Repair Syntax Gate
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:lisp:repair:decoupling:architecture:psf:
|
||||
#+FILETAGS: :rca:lisp:repair:decoupling:architecture:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Reimplemented the `org-skill-lisp-repair` to align with the "Sovereign Boundary" mandate. The previously synchronous, core-blocking repair logic has been replaced with an asynchronous, event-driven architecture using the Reactive Signal Pipeline.
|
||||
Reimplemented the `org-skill-lisp-repair` to align with the "Autonomous Boundary" mandate. The previously synchronous, core-blocking repair logic has been replaced with an asynchronous, event-driven architecture using the Reactive Signal Pipeline.
|
||||
|
||||
* 1. Issue: Core Bloat & Synchronous Coupling
|
||||
** Symptoms
|
||||
@@ -22,8 +22,8 @@ Mismatched expectations of signal nesting. The skill expected the code at `(getf
|
||||
** Resolution
|
||||
Updated the deterministic logic to correctly traverse the nested signal structure: `(getf (getf context :candidate) :payload)`.
|
||||
|
||||
* 3. PSF Mandate Alignment
|
||||
** Sovereign Boundary
|
||||
* 3. org-agent Mandate Alignment
|
||||
** Autonomous Boundary
|
||||
The core is now strictly a parser. Repair is an optional, user-space service.
|
||||
** Reactive Signal Pipeline
|
||||
Leveraged the pipeline's ability to re-inject `EVENT` signals to flatten the recursion of the repair loop.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#+TITLE: Root Cause Analysis: Playwright-Python Bridge (High-Fidelity Browsing)
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:intelligence:browsing:automation:psf:
|
||||
#+FILETAGS: :rca:intelligence:browsing:automation:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Successfully implemented a high-fidelity browsing bridge using Playwright and Python. This allows the `org-agent` to interact with modern, JavaScript-rendered web applications that were previously inaccessible via simple HTTP clients.
|
||||
@@ -28,7 +28,7 @@ Created the `:browser` cognitive tool, which exposes three primary capabilities
|
||||
- **Extraction:** Targeted text retrieval via CSS selectors.
|
||||
- **Vision:** Base64-encoded screenshot capture for future multimodal processing.
|
||||
|
||||
* 4. PSF Mandate Alignment
|
||||
* 4. org-agent Mandate Alignment
|
||||
** Zero-Bloat (Managed)
|
||||
While adding Playwright increases the image size, it is a "Complexity Earned" trade-off that dramatically expands the agent's capability frontier.
|
||||
** Literate Granularity
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#+TITLE: Root Cause Analysis: Individual Provider Track Verification
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:providers:llm:testing:psf:
|
||||
#+FILETAGS: :rca:providers:llm:testing:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
Verified the unified LLM gateway implementation for all 6 individual provider tracks (Anthropic, Gemini, Groq, OpenAI, OpenRouter, Ollama). Identified and resolved critical parsing failures in the Gemini track and integration gaps in the system build definition.
|
||||
@@ -30,7 +30,7 @@ Gemini requests failed with "API Key missing" even when environment variables we
|
||||
** Resolution
|
||||
Updated `vault-get-secret` to map both `:gemini` and `:gemini-api` to the same `GEMINI_API_KEY` environment variable.
|
||||
|
||||
* 4. PSF Mandate Alignment
|
||||
* 4. org-agent Mandate Alignment
|
||||
** Invariant Check
|
||||
- *High-Integrity Memory:* All individual provider tracks are now backed by automated unit tests (`llm-gateway-tests.lisp`).
|
||||
- *Literate Programming:* Updated `org-skill-llm-gateway.org` to reflect the improved `get-nested` utility.
|
||||
|
||||
@@ -29,9 +29,9 @@ Refactored `org-agent.asd` to use a **Flat Component Structure**.
|
||||
- *After:* `:components ((:file "src/package") ...)`
|
||||
This eliminates unnecessary nesting levels and drastically reduces the surface area for syntax errors.
|
||||
|
||||
* 3. PSF Mandate Alignment
|
||||
* 3. org-agent Mandate Alignment
|
||||
** Invariant Check
|
||||
- *Lisp Machine Sovereignty:* Verification utilized hot-reloading (`load-skill-from-org`) without restarting the SBCL image.
|
||||
- *Lisp Machine Autonomousty:* Verification utilized hot-reloading (`load-skill-from-org`) without restarting the SBCL image.
|
||||
- *Literate Programming:* Updated `org-skill-self-fix.org` to match the finalized `self-fix.lisp` logic.
|
||||
- *Institutional Memory:* This RCA documents the decision to flatten the `.asd` structure to prevent future "Parenthesis Hell" incidents.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#+TITLE: Root Cause Analysis: Shell Actuator Security Hardening
|
||||
#+DATE: 2026-04-11
|
||||
#+FILETAGS: :rca:security:shell:injection:psf:
|
||||
#+FILETAGS: :rca:security:shell:injection:autonomy:
|
||||
|
||||
* Executive Summary
|
||||
During the formal verification of the `org-skill-shell-actuator`, a critical command injection vulnerability was identified and patched. The previous implementation relied on a naive whitelist check that could be bypassed using shell metacharacters.
|
||||
@@ -23,7 +23,7 @@ The `execute-shell-safely` function only checked the first space-delimited word
|
||||
** Resolution
|
||||
Added the `in-package` header to `shell-logic.lisp`.
|
||||
|
||||
* 3. PSF Mandate Alignment
|
||||
* 3. org-agent Mandate Alignment
|
||||
** Invariant Check
|
||||
- *High-Integrity Memory:* The shell actuator is now formally verified with 4 new unit tests covering whitelist enforcement and injection blocking.
|
||||
- *Literate Programming:* Updated `org-skill-shell-actuator.org` Phase A and Build sections to reflect the hardened logic.
|
||||
|
||||
@@ -23,7 +23,7 @@ Selected "Majority Rules" over "First-to-Finish".
|
||||
- *Pros:* Higher accuracy, mathematically consistent.
|
||||
- *Cons:* Slower (latency limited by the slowest provider).
|
||||
** Invariant Alignment
|
||||
Aligns with PSF Mandate 4 (Radical Transparency) and Invariant 2 (Technical Mastery) by ensuring decisions are auditable and consistent across multiple brains.
|
||||
Aligns with org-agent Mandate 4 (Radical Transparency) and Invariant 2 (Technical Mastery) by ensuring decisions are auditable and consistent across multiple brains.
|
||||
|
||||
* 3. Design Decision: Task Integrity Gate
|
||||
** Requirement
|
||||
@@ -33,7 +33,7 @@ Added `task-integrity-check` in `deterministic.lisp`.
|
||||
** Invariant Alignment
|
||||
Enforces the "High-Integrity Memory" mandate by ensuring the Org-mode AST remains semantically valid according to GTD rules (e.g., no orphaned active tasks).
|
||||
|
||||
* 4. PSF Mandate Violations during Session (Corrected)
|
||||
* 4. org-agent Mandate Violations during Session (Corrected)
|
||||
** Violations
|
||||
1. Editing without prior commit.
|
||||
2. Direct `.lisp` edits vs Literate Org tangling.
|
||||
@@ -45,4 +45,4 @@ Enforces the "High-Integrity Memory" mandate by ensuring the Org-mode AST remain
|
||||
|
||||
* 5. Permanent Learnings
|
||||
- *Check Exports:* Always verify that symbols exported in `package.lisp` have a corresponding definition in the literate source.
|
||||
- *Strict PSF Mode:* Enable a pre-save hook or agent check to ensure all edits are performed within `#+begin_src` blocks in Literate Org files to avoid synchronization debt.
|
||||
- *Strict org-agent Mode:* Enable a pre-save hook or agent check to ensure all edits are performed within `#+begin_src` blocks in Literate Org files to avoid synchronization debt.
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
#+TITLE: User Experience (UX) Journey
|
||||
#+AUTHOR: Amr
|
||||
#+FILETAGS: :ux:design:psf:
|
||||
#+FILETAGS: :ux:design:autonomy:
|
||||
#+STARTUP: content
|
||||
|
||||
* Overview
|
||||
This document traces the intended User Experience (UX) journey for the ~org-agent~. It serves as a living design document to ensure that architectural decisions align with a frictionless, sovereign, and intuitive user interaction model.
|
||||
This document traces the intended User Experience (UX) journey for the ~org-agent~. It serves as a living design document to ensure that architectural decisions align with a frictionless, autonomous, and intuitive user interaction model.
|
||||
|
||||
* 1. The Zero-to-One Experience (Onboarding)
|
||||
** Goal
|
||||
@@ -23,7 +23,7 @@ The script verifies Docker presence and then launches an interactive prompt befo
|
||||
3. *Neural Provider:* "Select your primary neural provider [Gemini/OpenRouter/Anthropic/OpenAI]" -> Configures API Keys.
|
||||
4. *Data Gravity:* "Where is your Memex located?" -> Maps the host directory to the Docker container.
|
||||
|
||||
*Outcome:* The `.env` is generated, core skills are seeded into the user's Memex, and `docker-compose up -d` launches the daemon in the background. The user sees: /"Booting your sovereign brain in the background..."/
|
||||
*Outcome:* The `.env` is generated, core skills are seeded into the user's Memex, and `docker-compose up -d` launches the daemon in the background. The user sees: /"Booting your autonomous brain in the background..."/
|
||||
|
||||
* 2. The First Contact (The CLI Gateway)
|
||||
** Goal
|
||||
@@ -42,7 +42,7 @@ This opens a slick, colorful interactive terminal session:
|
||||
> Agent: You currently have 3 active projects:
|
||||
> 1. Org-agent v1.0
|
||||
> 2. Home Renovation
|
||||
> 3. Read 'The Sovereign Individual'
|
||||
> 3. Read 'The Autonomous Individual'
|
||||
#+end_example
|
||||
|
||||
** Behind the Scenes
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* The System Memory (memory.lisp)
|
||||
** Architectural Intent: The Single Address Space (Live Memory)
|
||||
|
||||
Yes, the Memory module is the cognitive bedrock of the PSF. It is not a database; it is the agent's live, active "brain" state.
|
||||
Yes, the Memory module is the cognitive bedrock of the org-agent. It is not a database; it is the agent's live, active "brain" state.
|
||||
|
||||
Traditional architectures rely on external databases (SQLite, Vector DBs) which introduce I/O latency and structural impedance. The org-agent architecture chooses a different path: the **Single Address Space**. By treating the entire knowledge base as a graph of Lisp pointers, we achieve microsecond recollection and total structural transparency.
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
The ~package.lisp~ file defines the public API of the ~org-agent~ harness. It serves as the primary membrane between the deterministic core modules and the dynamic world of skills and actuators.
|
||||
|
||||
** Architectural Intent: The Package Membrane
|
||||
By strictly defining the public interface, we ensure that skills remain decoupled from the harness implementation details. This allows for sovereign replacement of any component (e.g., swapping the Memory or the Probabilistic Engine) without breaking existing skills.
|
||||
By strictly defining the public interface, we ensure that skills remain decoupled from the harness implementation details. This allows for autonomous replacement of any component (e.g., swapping the Memory or the Probabilistic Engine) without breaking existing skills.
|
||||
|
||||
#+begin_src mermaid
|
||||
flowchart TD
|
||||
|
||||
@@ -26,6 +26,7 @@ ENV DEBIAN_FRONTEND=noninteractive
|
||||
# - curl/git/unzip: Standard tools for Quicklisp and binaries
|
||||
# - default-jre: Required by signal-cli
|
||||
# - python3/pip: Required for Playwright bridge
|
||||
# - socat: Required for stateful CLI interaction
|
||||
RUN apt-get update && apt-get install -y \
|
||||
sbcl \
|
||||
curl \
|
||||
@@ -37,6 +38,7 @@ RUN apt-get update && apt-get install -y \
|
||||
python3-pip \
|
||||
python3-venv \
|
||||
emacs-nox \
|
||||
socat \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# 2. Setup Playwright (High-Fidelity Browsing)
|
||||
@@ -129,10 +131,15 @@ NC='\033[0m'
|
||||
command_exists() { command -v "$1" >/dev/null 2>&1; }
|
||||
|
||||
# 1. Try to drop straight into the CLI chat
|
||||
if command_exists nc && nc -z $HOST $PORT 2>/dev/null; then
|
||||
echo -e "${BLUE}Connected to sovereign brain at $HOST:$PORT...${NC}"
|
||||
echo "Type your message and press Enter. Ctrl+C to exit."
|
||||
echo "--------------------------------------------------"
|
||||
if command_exists socat && socat - TCP:$HOST:$PORT,connect-timeout=1 2>/dev/null; then
|
||||
echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}"
|
||||
# Use socat with READLINE for history and arrow-key support.
|
||||
# It establishes a persistent bidirectional connection.
|
||||
socat READLINE,history=$HOME/.org_agent_history TCP:$HOST:$PORT
|
||||
exit 0
|
||||
elif command_exists nc && nc -z $HOST $PORT 2>/dev/null; then
|
||||
echo -e "${YELLOW}socat not found. Falling back to nc (no line-editing).${NC}"
|
||||
echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}"
|
||||
while true; do
|
||||
read -p "User: " MESSAGE
|
||||
if [ -z "$MESSAGE" ]; then continue; fi
|
||||
@@ -202,7 +209,7 @@ fi
|
||||
|
||||
# 4. Zero-to-One Onboarding (No installation found)
|
||||
echo -e "${BLUE}==================================================${NC}"
|
||||
echo -e "${BLUE} org-agent: Sovereign Intelligence Onboarding ${NC}"
|
||||
echo -e "${BLUE} org-agent: Autonomous Intelligence Onboarding ${NC}"
|
||||
echo -e "${BLUE}==================================================${NC}"
|
||||
|
||||
# --- OS & Docker Detection ---
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* The Skill Engine (skills.lisp)
|
||||
** Architectural Intent: Late-Binding Intelligence
|
||||
|
||||
A static, hardcoded architecture is inherently fragile. To build a sovereign agent that can evolve alongside its user, the harness must be a "Thin Shell" that delegates its capabilities to dynamic, hot-reloadable modules known as **Skills**. This is the core of our **Thin Harness / Thick Skill Microkernel Architecture**.
|
||||
A static, hardcoded architecture is inherently fragile. To build a autonomous agent that can evolve alongside its user, the harness must be a "Thin Shell" that delegates its capabilities to dynamic, hot-reloadable modules known as **Skills**. This is the core of our **Thin Harness / Thick Skill Microkernel Architecture**.
|
||||
|
||||
Skills unify the **"Why"** (Literate Org documentation) and the **"How"** (Functional Lisp implementation). This allows the harness to "learn" new behaviors without a full system restart, enabling a continuous evolutionary loop where the agent can eventually inspect and improve its own code.
|
||||
|
||||
@@ -373,7 +373,7 @@ You can call tools by returning a Lisp plist: (:target :tool :action :call :tool
|
||||
|
||||
EXAMPLES:
|
||||
(:target :tool :action :call :tool \"eval\" :args (:code \"(+ 1 1)\"))
|
||||
(:target :tool :action :call :tool \"grep-search\" :args (:pattern \"sovereignty\"))
|
||||
(:target :tool :action :call :tool \"grep-search\" :args (:pattern \"autonomousty\"))
|
||||
(:target :tool :action :call :tool \"shell\" :args (:cmd \"ls -la\"))
|
||||
|
||||
---
|
||||
|
||||
15
org-agent.sh
15
org-agent.sh
@@ -13,10 +13,15 @@ NC='\033[0m'
|
||||
command_exists() { command -v "$1" >/dev/null 2>&1; }
|
||||
|
||||
# 1. Try to drop straight into the CLI chat
|
||||
if command_exists nc && nc -z $HOST $PORT 2>/dev/null; then
|
||||
echo -e "${BLUE}Connected to sovereign brain at $HOST:$PORT...${NC}"
|
||||
echo "Type your message and press Enter. Ctrl+C to exit."
|
||||
echo "--------------------------------------------------"
|
||||
if command_exists socat && socat - TCP:$HOST:$PORT,connect-timeout=1 2>/dev/null; then
|
||||
echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}"
|
||||
# Use socat with READLINE for history and arrow-key support.
|
||||
# It establishes a persistent bidirectional connection.
|
||||
socat READLINE,history=$HOME/.org_agent_history TCP:$HOST:$PORT
|
||||
exit 0
|
||||
elif command_exists nc && nc -z $HOST $PORT 2>/dev/null; then
|
||||
echo -e "${YELLOW}socat not found. Falling back to nc (no line-editing).${NC}"
|
||||
echo -e "${BLUE}Connected to autonomous brain at $HOST:$PORT...${NC}"
|
||||
while true; do
|
||||
read -p "User: " MESSAGE
|
||||
if [ -z "$MESSAGE" ]; then continue; fi
|
||||
@@ -86,7 +91,7 @@ fi
|
||||
|
||||
# 4. Zero-to-One Onboarding (No installation found)
|
||||
echo -e "${BLUE}==================================================${NC}"
|
||||
echo -e "${BLUE} org-agent: Sovereign Intelligence Onboarding ${NC}"
|
||||
echo -e "${BLUE} org-agent: Autonomous Intelligence Onboarding ${NC}"
|
||||
echo -e "${BLUE}==================================================${NC}"
|
||||
|
||||
# --- OS & Docker Detection ---
|
||||
|
||||
20
scripts/org-agent-chat.sh
Executable file
20
scripts/org-agent-chat.sh
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
# org-agent-chat: The terminal mouthpiece for the Autonomous Brain.
|
||||
PORT=9105
|
||||
HOST=${1:-localhost}
|
||||
|
||||
# Check for socat (preferred)
|
||||
if command -v socat >/dev/null 2>&1; then
|
||||
# Use socat with READLINE for history and arrow-key support.
|
||||
# It establishes a persistent bidirectional connection.
|
||||
socat READLINE,history=$HOME/.org_agent_history TCP:$HOST:$PORT
|
||||
else
|
||||
# Fallback to nc (netcat) for a single-shot connection if socat is missing.
|
||||
# Note: This is less robust for agents with long-thinking times.
|
||||
echo "WARNING: socat not found. Falling back to nc (no line-editing support)."
|
||||
while true; do
|
||||
read -p "User: " MESSAGE
|
||||
if [ -z "$MESSAGE" ]; then continue; fi
|
||||
echo "$MESSAGE" | nc -N $HOST $PORT
|
||||
done
|
||||
fi
|
||||
@@ -5,10 +5,10 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Deterministic Engine Bouncer (Authorization Gate)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :system:bouncer:authorization:psf:
|
||||
#+FILETAGS: :system:bouncer:authorization:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Deterministic Engine Bouncer* is the authorization gate for high-risk actions. It serializes intercepted actions into Org nodes ("Flight Plans") and re-injects them once manually approved by the Sovereign.
|
||||
The *Deterministic Engine Bouncer* is the authorization gate for high-risk actions. It serializes intercepted actions into Org nodes ("Flight Plans") and re-injects them once manually approved by the Autonomous.
|
||||
|
||||
* Package Context
|
||||
#+begin_src lisp
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Chat Agent (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :chat:conversational:ui:psf:
|
||||
#+FILETAGS: :chat:conversational:ui:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Chat Agent* provides a dedicated conversational interface within Emacs (`*org-agent-chat*`). It enables fluid dialogue while maintaining strict persona alignment and contextual awareness.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: CLI Gateway (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :gateway:cli:io:psf:
|
||||
#+FILETAGS: :gateway:cli:io:autonomy:
|
||||
|
||||
* Overview
|
||||
The *CLI Gateway* is the primary interaction point for the Org-Agent MVP. It provides a lightweight TCP socket server that allows local terminal clients to communicate with the daemon. It ensures a frictionless "First Contact" experience immediately following installation.
|
||||
@@ -58,11 +58,13 @@ The CLI actuator writes the agent's response back to the client's network stream
|
||||
(let* ((payload (getf action :payload))
|
||||
(text (or (getf payload :text) (getf action :text)))
|
||||
(stream (getf context :reply-stream)))
|
||||
(if (and stream (open-stream-p stream))
|
||||
(progn
|
||||
(format stream "Agent: ~a~%" text)
|
||||
(finish-output stream))
|
||||
(harness-log "CLI ERROR: No active reply stream for signal."))))
|
||||
(handler-case
|
||||
(if (and stream (open-stream-p stream))
|
||||
(progn
|
||||
(format stream "Agent: ~a~%" text)
|
||||
(finish-output stream))
|
||||
(harness-log "CLI ERROR: No active or open reply stream for signal."))
|
||||
(error (c) (harness-log "CLI ACTUATOR ERROR: ~a" c)))))
|
||||
#+end_src
|
||||
|
||||
** Server: Client Handler
|
||||
@@ -71,6 +73,11 @@ Handles an individual TCP connection. It reads lines until the connection is clo
|
||||
#+begin_src lisp
|
||||
(defun handle-cli-client (stream)
|
||||
"Reads lines from a CLI client and injects them as stimuli."
|
||||
(harness-log "CLI: Client connected.")
|
||||
(format stream "--------------------------------------------------~%")
|
||||
(format stream " Connected to the Autonomous Brain (v0.1.0)~%")
|
||||
(format stream "--------------------------------------------------~%")
|
||||
(finish-output stream)
|
||||
(handler-case
|
||||
(loop for line = (read-line stream nil nil)
|
||||
while line do
|
||||
@@ -82,7 +89,8 @@ Handles an individual TCP connection. It reads lines until the connection is clo
|
||||
:channel :cli
|
||||
:text trimmed))
|
||||
:stream stream))))
|
||||
(error (c) (harness-log "CLI CLIENT ERROR: ~a" c))))
|
||||
(error (c) (harness-log "CLI CLIENT DISCONNECT: ~a" c)))
|
||||
(harness-log "CLI: Client disconnected."))
|
||||
#+end_src
|
||||
|
||||
** Server: Main Loop
|
||||
@@ -129,20 +137,23 @@ We tangle a lightweight client script that the user can run on their host machin
|
||||
|
||||
** The Bash Client
|
||||
#+begin_src bash :tangle ../scripts/org-agent-chat.sh :shebang "#!/bin/bash"
|
||||
# org-agent-chat: The terminal mouthpiece for the Sovereign Brain.
|
||||
# org-agent-chat: The terminal mouthpiece for the Autonomous Brain.
|
||||
PORT=9105
|
||||
HOST=${1:-localhost}
|
||||
|
||||
echo "Connecting to org-agent at $HOST:$PORT..."
|
||||
echo "Type your message and press Enter. Ctrl+C to exit."
|
||||
echo "--------------------------------------------------"
|
||||
|
||||
# Uses netcat (nc) for a simple bidirectional pipe.
|
||||
# Requires an open connection. We use a simple loop for persistence.
|
||||
while true; do
|
||||
read -p "User: " MESSAGE
|
||||
if [ -z "$MESSAGE" ]; then continue; fi
|
||||
# Send message and wait for one line of response from Agent
|
||||
echo "$MESSAGE" | nc -N $HOST $PORT
|
||||
done
|
||||
# Check for socat (preferred)
|
||||
if command -v socat >/dev/null 2>&1; then
|
||||
# Use socat with READLINE for history and arrow-key support.
|
||||
# It establishes a persistent bidirectional connection.
|
||||
socat READLINE,history=$HOME/.org_agent_history TCP:$HOST:$PORT
|
||||
else
|
||||
# Fallback to nc (netcat) for a single-shot connection if socat is missing.
|
||||
# Note: This is less robust for agents with long-thinking times.
|
||||
echo "WARNING: socat not found. Falling back to nc (no line-editing support)."
|
||||
while true; do
|
||||
read -p "User: " MESSAGE
|
||||
if [ -z "$MESSAGE" ]; then continue; fi
|
||||
echo "$MESSAGE" | nc -N $HOST $PORT
|
||||
done
|
||||
fi
|
||||
#+end_src
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Social Consensus Protocol (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :distributed:swarms:consensus:psf:
|
||||
#+FILETAGS: :distributed:swarms:consensus:autonomy:
|
||||
#+DEPENDS_ON: skill-sub-agent-manager
|
||||
|
||||
* Overview
|
||||
@@ -30,7 +30,7 @@ Enable reliable, cross-instance coordination without a central master.
|
||||
#+begin_src lisp
|
||||
(defun consensus-propose-vote (proposal)
|
||||
"Broadcasts a proposal to the peer swarm and collects votes.
|
||||
Implements PSF Social Consensus Protocol."
|
||||
Implements org-agent Social Consensus Protocol."
|
||||
(let* ((peers (get-swarm-peer-list))
|
||||
(votes (loop for peer in peers
|
||||
collect (org-agent:send-swarm-packet peer `(:type :REQUEST :action :vote :proposal ,proposal)))))
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Context Manager (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :context:system:psf:
|
||||
#+FILETAGS: :context:system:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Context Manager* handles the cognitive stack of the agent, allowing for switching between different projects, areas, and tasks while maintaining a clean environment.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Credentials Vault (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :auth:security:infrastructure:psf:
|
||||
#+FILETAGS: :auth:security:infrastructure:autonomy:
|
||||
#+DEPENDS_ON: id:state-persistence-skill
|
||||
|
||||
* Overview
|
||||
@@ -16,7 +16,7 @@ The *Credentials Vault* is the high-security enclave for the Org-Agent. It centr
|
||||
:END:
|
||||
|
||||
** 1. Purpose
|
||||
Securely manage all authentication tokens required for the PSF to operate.
|
||||
Securely manage all authentication tokens required for the org-agent to operate.
|
||||
|
||||
** 2. User Needs
|
||||
- *Unified Storage:* Single interface for API keys and Session Cookies.
|
||||
@@ -123,11 +123,11 @@ When a secret is updated, we immediately snapshot the Memory to ensure the crede
|
||||
#+end_src
|
||||
|
||||
** Onboarding Logic
|
||||
Retained from the legacy Google skill, this provides the instructions for the sovereign cookie handshake.
|
||||
Retained from the legacy Google skill, this provides the instructions for the autonomous cookie handshake.
|
||||
|
||||
#+begin_src lisp
|
||||
(defun vault-onboard-gemini-web ()
|
||||
"Instructions for the Sovereign Cookie Handshake."
|
||||
"Instructions for the Autonomous Cookie Handshake."
|
||||
(harness-log "--- GEMINI WEB ONBOARDING ---")
|
||||
(harness-log "1. Visit gemini.google.com")
|
||||
(harness-log "2. Run the 'Get Gemini Cookies' Bookmarklet.")
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Delegation Manager (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :delegation:multi-agent:psf:
|
||||
#+FILETAGS: :delegation:multi-agent:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Delegation Manager* orchestrates the dispatch of tasks to sub-agents or specialized skills.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Vector Embedding (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :embedding:vector-search:semantic:psf:
|
||||
#+FILETAGS: :embedding:vector-search:semantic:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Vector Embedding* skill provides semantic search and vectorization capabilities to the org-agent. It decouples the specific embedding algorithms and provider-specific API calls from the core kernel.
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Environment Configuration Manager (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :system:config:sovereignty:psf:
|
||||
#+FILETAGS: :system:config:autonomousty:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Environment Configuration Manager* is the source of truth for user preferences. It persists settings (like LLM Model Fleets) into the harness's Memory, allowing for dynamic runtime reconfiguration without environment variable bloat.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Event Orchestrator (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :system:control:event-driven:cron:hooks:routing:psf:
|
||||
#+FILETAGS: :system:control:event-driven:cron:hooks:routing:autonomy:
|
||||
#+DEPENDS_ON: id:state-persistence-skill
|
||||
|
||||
* Overview
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Formal Verification Gate (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :security:logic:formal-methods:psf:
|
||||
#+FILETAGS: :security:logic:formal-methods:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Formal Verification Gate* replaces heuristic whitelisting with deterministic logic proofs. It ensures that every action proposed by Probabilistic Engine is *provably safe* against the harness's core security invariants using a Lisp-native deterministic prover.
|
||||
@@ -30,7 +30,7 @@ Define a logic-based verification layer for high-integrity decision making witho
|
||||
** 2. Success Criteria
|
||||
- [ ] *Invariants:* Express security properties as Lisp predicates.
|
||||
- [ ] *Soundness:* Block any action that fails a deterministic safety check.
|
||||
- [ ] *Path Confinement:* Prove that file operations are confined to the Sovereign's memex.
|
||||
- [ ] *Path Confinement:* Prove that file operations are confined to the Autonomous's memex.
|
||||
- [ ] *Network Protection:* Prove that shell commands do not attempt unauthorized data exfiltration.
|
||||
|
||||
* Phase B: Blueprint (PROTOCOL)
|
||||
@@ -75,7 +75,7 @@ Ensures all file-related operations (including shell calls that touch files) are
|
||||
|
||||
#+begin_src lisp
|
||||
(def-invariant path-confinement :all (action context)
|
||||
"Forces all path-based operations to reside within the Sovereign Memex."
|
||||
"Forces all path-based operations to reside within the Autonomous Memex."
|
||||
(declare (ignore context))
|
||||
(let* ((payload (getf action :payload))
|
||||
(path (or (getf payload :file) (getf payload :path)))
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
:ID: gardener-skill
|
||||
:CREATED: [2026-04-13 Mon 18:50]
|
||||
:END:
|
||||
#+TITLE: SKILL: Sovereign Gardener (Memex Maintenance)
|
||||
#+TITLE: SKILL: Autonomous Gardener (Memex Maintenance)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :gardener:maintenance:memex:psf:
|
||||
#+FILETAGS: :gardener:maintenance:memex:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Sovereign Gardener* is the metabolic immune system of the Memex. It autonomously audits the knowledge graph for structural decay—broken links, orphaned nodes, and missing metadata—ensuring that the system remains coherent and navigatable over long horizons.
|
||||
The *Autonomous Gardener* is the metabolic immune system of the Memex. It autonomously audits the knowledge graph for structural decay—broken links, orphaned nodes, and missing metadata—ensuring that the system remains coherent and navigatable over long horizons.
|
||||
|
||||
* Phase A: Demand (PRD)
|
||||
:PROPERTIES:
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Matrix Gateway (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :gateway:matrix:io:psf:
|
||||
#+FILETAGS: :gateway:matrix:io:autonomy:
|
||||
#+DEPENDS_ON: id:credentials-vault-skill
|
||||
|
||||
* Overview
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Signal Gateway (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :gateway:signal:io:psf:
|
||||
#+FILETAGS: :gateway:signal:io:autonomy:
|
||||
#+DEPENDS_ON: id:credentials-vault-skill
|
||||
|
||||
* Overview
|
||||
The *Signal Gateway* provides bi-directional communication between the Sovereign and the Org-Agent via the `signal-cli` tool. It features a non-blocking polling sensor and a high-integrity actuator for outbound messaging.
|
||||
The *Signal Gateway* provides bi-directional communication between the Autonomous and the Org-Agent via the `signal-cli` tool. It features a non-blocking polling sensor and a high-integrity actuator for outbound messaging.
|
||||
|
||||
* Phase A: Demand (PRD)
|
||||
:PROPERTIES:
|
||||
|
||||
@@ -4,11 +4,11 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Telegram Gateway (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :gateway:telegram:io:psf:
|
||||
#+FILETAGS: :gateway:telegram:io:autonomy:
|
||||
#+DEPENDS_ON: id:credentials-vault-skill
|
||||
|
||||
* Overview
|
||||
The *Telegram Gateway* provides bi-directional communication between the Sovereign and the Org-Agent via the Telegram Bot API. It features a non-blocking polling sensor and a high-integrity actuator for outbound messaging.
|
||||
The *Telegram Gateway* provides bi-directional communication between the Autonomous and the Org-Agent via the Telegram Bot API. It features a non-blocking polling sensor and a high-integrity actuator for outbound messaging.
|
||||
|
||||
* Phase A: Demand (PRD)
|
||||
:PROPERTIES:
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Harness Monitor
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :system:monitor:telemetry:psf:
|
||||
#+FILETAGS: :system:monitor:telemetry:autonomy:
|
||||
#+DEPENDS_ON: id:47425a43-2be0-423c-8509-22592cfe9c9e
|
||||
|
||||
* Overview
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Homoiconic Memory (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :org-mode:ast:json:normalization:psf:
|
||||
#+FILETAGS: :org-mode:ast:json:normalization:autonomy:
|
||||
#+DEPENDS_ON: id:state-persistence-skill
|
||||
|
||||
* Overview
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Inbound Multi-Channel Gateway (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :gateway:sensors:io:psf:
|
||||
#+FILETAGS: :gateway:sensors:io:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Inbound Multi-Channel Gateway* provides the sensory interface for external messaging. It enables the agent to "hear" the user from various platforms (Signal, Telegram, SMS) by normalizing disparate inbound payloads into standard Probabilistic-Deterministic Kernel stimuli.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Lisp Repair Syntax Gate
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :system:repair:syntax:lisp:psf:
|
||||
#+FILETAGS: :system:repair:syntax:lisp:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Lisp Repair Syntax Gate* asynchronously intercepts `:syntax-error` events emitted by the harness when Probabilistic Engine (LLM) proposals fail to parse. It performs deterministic or neural repairs and re-injects the corrected action into the pipeline.
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Lisp Validator
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :security:lisp:ast:psf:
|
||||
#+FILETAGS: :security:lisp:ast:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Lisp Validator* is the primary structural gate for the Probabilistic-Deterministic Lisp Machine. It provides a recursive AST validator that subjects all Lisp proposals from the Probabilistic Engine to a strict "Deny-by-Default" sandbox.
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Unified LLM Gateway (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :llm:gateway:infrastructure:psf:
|
||||
#+FILETAGS: :llm:gateway:infrastructure:autonomy:
|
||||
#+DEPENDS_ON: id:credentials-vault-skill
|
||||
|
||||
* Overview
|
||||
@@ -118,7 +118,7 @@ This is the primary actuator for neural reasoning. It handles the specific JSON
|
||||
(:anthropic `(("Content-Type" . "application/json") ("x-api-key" . ,api-key) ("anthropic-version" . "2023-06-01")))
|
||||
(:gemini-api `(("Content-Type" . "application/json") ("x-goog-api-key" . ,api-key)))
|
||||
(:openrouter `(("Content-Type" . "application/json") ("Authorization" . ,(format nil "Bearer ~a" api-key))
|
||||
("HTTP-Referer" . "https://github.com/amr/org-agent") ("X-Title" . "org-agent Sovereign Kernel")))
|
||||
("HTTP-Referer" . "https://github.com/amr/org-agent") ("X-Title" . "org-agent Autonomous Kernel")))
|
||||
(t `(("Content-Type" . "application/json") ("Authorization" . ,(format nil "Bearer ~a" api-key))))))
|
||||
(body (case provider
|
||||
(:anthropic (cl-json:encode-json-to-string `((model . ,(or model "claude-3-5-sonnet-20240620")) (max_tokens . 4096) (system . ,system-prompt) (messages . (( (role . "user") (content . ,prompt) ))))))
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Memex Manager (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :memex:gtd:zettelkasten:integrity:psf:
|
||||
#+FILETAGS: :memex:gtd:zettelkasten:integrity:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Memex Manager* is the primary automation engine for the Personal Knowledge Management system. It enforces metadata standards, automates task lifecycles, and distills ephemeral daily logs into timeless knowledge.
|
||||
@@ -22,7 +22,7 @@ Define automated behaviors for knowledge and task management integrity.
|
||||
- *Unified Capture:* Landing all new information in `inbox.org`.
|
||||
- *Metadata Compliance:* Mandatory `:CREATED:` and `:LOGBOOK:` drawers.
|
||||
- *Automated Task Lifecycle:* `NEXT` promotion logic for GTD.
|
||||
- *Mobile Sovereignty:* Compatibility with Markor and Orgzly.
|
||||
- *Mobile Autonomousty:* Compatibility with Markor and Orgzly.
|
||||
- *Agentic Distillation:* Extracting evergreen concepts from daily logs.
|
||||
|
||||
** 3. Success Criteria
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Onboarding & Calibration (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :onboarding:calibration:setup:psf:
|
||||
#+FILETAGS: :onboarding:calibration:setup:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Onboarding Skill* ensures that the Lisp Machine environment is correctly calibrated. It automates the "zero-to-one" setup of the Probabilistic-Deterministic Kernel, including path normalization, identity personalization, and provider/actuator configuration.
|
||||
@@ -16,7 +16,7 @@ The *Onboarding Skill* ensures that the Lisp Machine environment is correctly ca
|
||||
:END:
|
||||
|
||||
** 1. Purpose
|
||||
Define automated behaviors for verifying and configuring the PSF environment.
|
||||
Define automated behaviors for verifying and configuring the org-agent environment.
|
||||
|
||||
** 2. User Needs
|
||||
- *Environment Verification:* Confirm SBCL, Quicklisp, and core binaries are present.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Peripheral Vision (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :context:foveal:peripheral:pruning:psf:
|
||||
#+FILETAGS: :context:foveal:peripheral:pruning:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Peripheral Vision* skill implements the Foveal-Peripheral Hybrid model for context pruning. It ensures that the LLM receives a semantically relevant and manageable view of the Memory, preventing context window overflow.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Policy Enforcer
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :security:alignment:policy:psf:
|
||||
#+FILETAGS: :security:alignment:policy:autonomy:
|
||||
#+DEPENDS_ON: id:47425a43-2be0-423c-8509-22592cfe9c9e
|
||||
|
||||
* Overview
|
||||
@@ -15,7 +15,7 @@ Unlike traditional software where a "Kernel" might have hardcoded rules, the Org
|
||||
|
||||
1. **Topological Bootstrapping:** By declaring a #+DEPENDS_ON: dependency on the Policy file's ID, we ensure the System Policy is always registered in the Lisp image's skill catalog before this enforcer attempts to guard it.
|
||||
2. **Priority Preemption:** By setting :priority 1000, this skill registers itself as the very first check in the decide-gate. It effectively "pre-empts" all other skills, ensuring that no action (like a shell command or a file write) is even considered until it has cleared the alignment check.
|
||||
3. **Decoupled Enforcement:** The harness does not "know" it is enforcing a policy. It simply executes the highest-priority deterministic functions provided by its skills. This allows the Sovereign to swap out policies or enforcers without ever touching the core harness code.
|
||||
3. **Decoupled Enforcement:** The harness does not "know" it is enforcing a policy. It simply executes the highest-priority deterministic functions provided by its skills. This allows the Autonomous to swap out policies or enforcers without ever touching the core harness code.
|
||||
|
||||
* Implementation
|
||||
|
||||
@@ -27,11 +27,11 @@ Unlike traditional software where a "Kernel" might have hardcoded rules, the Org
|
||||
:probabilistic (lambda (context)
|
||||
\"You are the Org-Agent Policy Enforcer. Your goal is to ensure all actions empower the user through the Lisp Machine and adhere to the System Policy.\")
|
||||
:deterministic (lambda (action context)
|
||||
;; Basic invariant check: Block actions that appear to violate sovereignty
|
||||
;; Basic invariant check: Block actions that appear to violate autonomy
|
||||
(let ((payload (getf action :payload)))
|
||||
(if (and payload (search \"proprietary\" (format nil \"~s\" payload)))
|
||||
(progn
|
||||
(org-agent:harness-log \"DETERMINISTIC [Policy]: Sovereignty violation suspected. Blocking action.\")
|
||||
(org-agent:harness-log \"DETERMINISTIC [Policy]: Autonomy violation suspected. Blocking action.\")
|
||||
nil)
|
||||
action))))
|
||||
#+end_src
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: System Policy
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :platform:policy:alignment:
|
||||
#+FILETAGS: :platform:policy:alignment:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Org-Agent* is a probabilistic-deterministic harness for a personal operating system. It uses Org-mode as its native memory and Common Lisp as its deterministic reasoning engine.
|
||||
The *org-agent* is a probabilistic-deterministic harness for a personal operating system. It uses Org-mode as its native memory and Common Lisp as its deterministic reasoning engine.
|
||||
|
||||
* Package Context
|
||||
Every skill executes within its own jailed package namespace, while inheriting core harness symbols.
|
||||
@@ -20,15 +20,15 @@ Every skill executes within its own jailed package namespace, while inheriting c
|
||||
* The Core Invariants
|
||||
This document contains the *Core System Policy*. These are non-negotiable philosophical and technical constraints that every agentic action MUST satisfy. The Deterministic Engine uses these headlines as a "Moral Compass" during the decision stage.
|
||||
|
||||
** 1. Sovereignty Above All
|
||||
Every action must increase the user's independence from centralized, proprietary platforms. If a tool or library introduces a dependency on a non-sovereign entity, it must be flagged for replacement.
|
||||
** 1. Autonomy Above All
|
||||
Every action must increase the user's independence from centralized, proprietary platforms. If a tool or library introduces a dependency on a non-autonomous entity, it must be flagged for replacement.
|
||||
|
||||
#+begin_src lisp :tangle ../src/policy.lisp
|
||||
(defun policy-check-sovereignty (action context)
|
||||
"Ensures the action does not violate the Sovereignty invariant."
|
||||
(defun policy-check-autonomy (action context)
|
||||
"Ensures the action does not violate the Autonomy invariant."
|
||||
(declare (ignore context))
|
||||
;; Implementation placeholder: currently permits all actions.
|
||||
;; Future: Scan for non-sovereign domain names or proprietary API endpoints.
|
||||
;; Future: Scan for non-autonomous domain names or proprietary API endpoints.
|
||||
action)
|
||||
#+end_src
|
||||
|
||||
@@ -50,7 +50,7 @@ The main deterministic entry point for the policy skill. It orchestrates the var
|
||||
#+begin_src lisp :tangle ../src/policy.lisp
|
||||
(defun policy-deterministic-gate (action context)
|
||||
"The main policy gate. Sub-calls engineering standards if available."
|
||||
(let ((current-action (policy-check-sovereignty action context)))
|
||||
(let ((current-action (policy-check-autonomy action context)))
|
||||
(when current-action
|
||||
(let ((eng-pkg (find-package :org-agent.skills.org-skill-engineering-standards)))
|
||||
(when eng-pkg
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Communication Protocol Schema Validator (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :protocol:communication-protocol:security:validation:psf:
|
||||
#+FILETAGS: :protocol:communication-protocol:security:validation:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Communication Protocol Schema Validator* skill provides deep structural validation for all messages entering the org-agent kernel. It ensures that every property list adheres to a strict schema, preventing malformed data from causing harness-level errors.
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
:ID: scribe-skill
|
||||
:CREATED: [2026-04-13 Mon 18:40]
|
||||
:END:
|
||||
#+TITLE: SKILL: Sovereign Scribe (Knowledge Distillation)
|
||||
#+TITLE: SKILL: Autonomous Scribe (Knowledge Distillation)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :scribe:distillation:memex:psf:
|
||||
#+FILETAGS: :scribe:distillation:memex:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Sovereign Scribe* is the background architect of the Memex. It is responsible for the "Nightly Distillation": a process that scans chronological daily logs, extracts evergreen concepts, and formalizes them into atomic Zettelkasten notes.
|
||||
The *Autonomous Scribe* is the background architect of the Memex. It is responsible for the "Nightly Distillation": a process that scans chronological daily logs, extracts evergreen concepts, and formalizes them into atomic Zettelkasten notes.
|
||||
|
||||
* Phase A: Demand (PRD)
|
||||
:PROPERTIES:
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Self-Fix Agent (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :self-repair:autonomy:debugging:psf:
|
||||
#+FILETAGS: :self-repair:autonomy:debugging:autonomy:
|
||||
#+DEPENDS_ON: id:0ae190ec-5991-49b5-9038-f860548a3a0c
|
||||
#+DEPENDS_ON: id:98576df2-c496-4e4a-9acb-0bca514a0305
|
||||
|
||||
@@ -81,7 +81,7 @@ The *Self-Fix Agent* is the system's "Repair Mechanism." It takes failure hypoth
|
||||
:priority 95
|
||||
:trigger (lambda (context) (eq (getf (getf context :payload) :sensor) :repair-request))
|
||||
:probabilistic (lambda (context)
|
||||
(format nil "You are the PSF Repair Actuator. Synthesize a surgical fix for the reported failure.
|
||||
(format nil "You are the org-agent Repair Actuator. Synthesize a surgical fix for the reported failure.
|
||||
Return a Lisp plist for :repair-file."))
|
||||
:deterministic (lambda (action context)
|
||||
(let ((payload (getf action :payload)))
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Shell Actuator Agent (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :shell:actuator:system:psf:
|
||||
#+FILETAGS: :shell:actuator:system:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Shell Actuator Agent* provides the bridge to the host operating system. It enables secure command execution while maintaining a strict security posture through whitelisting and diagnostic feedback loops.
|
||||
@@ -51,7 +51,7 @@ Interfaces for secure system calls. State is event-driven via the core kernel bu
|
||||
*** DONE Diagnostic Capture
|
||||
- Verified that STDOUT, STDERR, and Exit Codes are correctly captured and re-injected.
|
||||
*** DONE Result Analysis Loop
|
||||
- The `:probabilistic` component successfully formats command results for Sovereign review.
|
||||
- The `:probabilistic` component successfully formats command results for Autonomous review.
|
||||
|
||||
* Phase B: Blueprint (PROTOCOL)
|
||||
:PROPERTIES:
|
||||
|
||||
@@ -4,17 +4,17 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: State Persistence Layer (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :memory:persistence:closos:ipfs:psf:
|
||||
#+FILETAGS: :memory:persistence:closos:ipfs:autonomy:
|
||||
|
||||
* Overview
|
||||
The *State Persistence Layer* ensures the durability and sovereignty of the agent's memory. It unifies local, high-performance Lisp image dumps with decentralized, immutable IPFS checkpointing. This dual-path approach provides both rapid operational recovery and long-term historical integrity.
|
||||
The *State Persistence Layer* ensures the durability and autonomousty of the agent's memory. It unifies local, high-performance Lisp image dumps with decentralized, immutable IPFS checkpointing. This dual-path approach provides both rapid operational recovery and long-term historical integrity.
|
||||
|
||||
** Deep Reasoning: Protection Against External Tampering
|
||||
While the *Prover* and *Bouncer* protect against internal skill failures, the Merkle-Tree architecture within the State Layer protects against **External Threats** (e.g., a hacker or virus modifying your `.org` files directly on disk).
|
||||
|
||||
1. **Skill Hashing:** Every code block and headline in a skill file has a unique Merkle hash recorded in the Memory.
|
||||
2. **Integrity Verification:** Upon loading or reloading a skill, the harness re-calculates the hash and compares it against the "known good" state in the Merkle Tree.
|
||||
3. **Automatic Lockdown:** If a file has been tampered with externally, the hash mismatch triggers an immediate lockdown. the harness refuses to execute the skill and alerts the Sovereign via Signal/Telegram.
|
||||
3. **Automatic Lockdown:** If a file has been tampered with externally, the hash mismatch triggers an immediate lockdown. the harness refuses to execute the skill and alerts the Autonomous via Signal/Telegram.
|
||||
|
||||
* Phase A: Demand (PRD)
|
||||
:PROPERTIES:
|
||||
@@ -26,7 +26,7 @@ Define automated behaviors for knowledge graph serialization, local persistence,
|
||||
|
||||
** 2. User Needs
|
||||
- *Instant Recall:* Rapid local loading of the Memory from a persistent image.
|
||||
- *Decentralized Archival:* Pushing immutable snapshots to IPFS for cross-node sync and sovereignty.
|
||||
- *Decentralized Archival:* Pushing immutable snapshots to IPFS for cross-node sync and autonomousty.
|
||||
- *Merkle Integrity:* Every save operation must respect and record the Merkle-Tree history.
|
||||
- *Safety:* Sanitize and validate data during restoration to prevent code injection.
|
||||
|
||||
@@ -36,7 +36,7 @@ Define automated behaviors for knowledge graph serialization, local persistence,
|
||||
:END:
|
||||
|
||||
** 1. Architectural Intent
|
||||
The persistence layer acts as a bridge between the volatile RAM-resident Memory and permanent storage backends. It provides two adapters: `LOCAL` (fast, SBCL-native) and `IPFS` (sovereign, content-addressed).
|
||||
The persistence layer acts as a bridge between the volatile RAM-resident Memory and permanent storage backends. It provides two adapters: `LOCAL` (fast, SBCL-native) and `IPFS` (autonomous, content-addressed).
|
||||
|
||||
** 2. Semantic Interfaces
|
||||
#+begin_src lisp
|
||||
@@ -120,7 +120,7 @@ Restores the state from the local disk.
|
||||
#+end_src
|
||||
|
||||
** IPFS Serialization (persistence-serialize-for-archival)
|
||||
Converts the live `*memory*` into a list of Lisp Property Lists (Plists) for sovereign, homoiconic transport.
|
||||
Converts the live `*memory*` into a list of Lisp Property Lists (Plists) for autonomous, homoiconic transport.
|
||||
|
||||
#+begin_src lisp
|
||||
(defun persistence-serialize-for-archival ()
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
:END:
|
||||
#+TITLE: SKILL: Task Integrity Agent (Universal Literate Note)
|
||||
#+STARTUP: content
|
||||
#+FILETAGS: :gtd:integrity:safety:psf:
|
||||
#+FILETAGS: :gtd:integrity:safety:autonomy:
|
||||
|
||||
* Overview
|
||||
The *Task Integrity Agent* is the "Guardian" of the GTD system. It ensures that all task transitions adhere to semantic rules, preventing logical inconsistencies and maintaining the structural health of the task hierarchy.
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
(in-package :org-agent)
|
||||
|
||||
(defun policy-check-sovereignty (action context)
|
||||
"Ensures the action does not violate the Sovereignty invariant."
|
||||
(defun policy-check-autonomy (action context)
|
||||
"Ensures the action does not violate the Autonomy invariant."
|
||||
(declare (ignore context))
|
||||
;; Implementation placeholder: currently permits all actions.
|
||||
;; Future: Scan for non-sovereign domain names or proprietary API endpoints.
|
||||
;; Future: Scan for non-autonomous domain names or proprietary API endpoints.
|
||||
action)
|
||||
|
||||
(defun policy-deterministic-gate (action context)
|
||||
"The main policy gate. Sub-calls engineering standards if available."
|
||||
(let ((current-action (policy-check-sovereignty action context)))
|
||||
(let ((current-action (policy-check-autonomy action context)))
|
||||
(when current-action
|
||||
(let ((eng-pkg (find-package :org-agent.skills.org-skill-engineering-standards)))
|
||||
(when eng-pkg
|
||||
|
||||
@@ -237,7 +237,7 @@ You can call tools by returning a Lisp plist: (:target :tool :action :call :tool
|
||||
|
||||
EXAMPLES:
|
||||
(:target :tool :action :call :tool \"eval\" :args (:code \"(+ 1 1)\"))
|
||||
(:target :tool :action :call :tool \"grep-search\" :args (:pattern \"sovereignty\"))
|
||||
(:target :tool :action :call :tool \"grep-search\" :args (:pattern \"autonomousty\"))
|
||||
(:target :tool :action :call :tool \"shell\" :args (:cmd \"ls -la\"))
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user