Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions .claude/CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

The following files in `.machine_readable/` contain structured project metadata:

- `STATE.scm` - Current project state and progress
- `META.scm` - Architecture decisions and development practices
- `ECOSYSTEM.scm` - Position in the ecosystem and related projects
- `AGENTIC.scm` - AI agent interaction patterns
- `NEUROSYM.scm` - Neurosymbolic integration config
- `PLAYBOOK.scm` - Operational runbook
- `.machine_readable/6a2/STATE.a2ml` - Current project state and progress
- `.machine_readable/6a2/META.a2ml` - Architecture decisions and development practices
- `.machine_readable/6a2/ECOSYSTEM.a2ml` - Position in the ecosystem and related projects
- `.machine_readable/6a2/AGENTIC.a2ml` - AI agent interaction patterns
- `.machine_readable/6a2/NEUROSYM.a2ml` - Neurosymbolic integration config
- `.machine_readable/6a2/PLAYBOOK.a2ml` - Operational runbook

---

Expand All @@ -28,7 +28,7 @@ The following files in `.machine_readable/` contain structured project metadata:
| **Bash/POSIX Shell** | Scripts, automation | Keep minimal |
| **JavaScript** | Only where ReScript cannot | MCP protocol glue, Deno APIs |
| **Nickel** | Configuration language | For complex configs |
| **Guile Scheme** | State/meta files | STATE.scm, META.scm, ECOSYSTEM.scm |
| **Guile Scheme** | State/meta files | .machine_readable/6a2/STATE.a2ml, .machine_readable/6a2/META.a2ml, .machine_readable/6a2/ECOSYSTEM.a2ml |
| **Julia** | Batch scripts, data processing | Per RSR |
| **OCaml** | AffineScript compiler | Language-specific |
| **Ada** | Safety-critical systems | Where required |
Expand Down
17 changes: 17 additions & 0 deletions .github/workflows/boj-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: BoJ Server Build Trigger
on:
push:
branches: [main, master]
workflow_dispatch:
jobs:
trigger-boj:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Trigger BoJ Server (Casket/ssg-mcp)
run: |
# Send a secure trigger to boj-server to build this repository
curl -X POST "http://boj-server.local:7700/cartridges/ssg-mcp/invoke" -H "Content-Type: application/json" -d "{\"repo\": \"${{ github.repository }}\", \"branch\": \"${{ github.ref_name }}\", \"engine\": \"casket\\"}"}
continue-on-error: true
permissions: read-all
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
26 changes: 26 additions & 0 deletions .machine_readable/CLADE.a2ml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# Clade declaration — part of the gv-clade-index registry
# See: https://github.com/hyperpolymath/gv-clade-index

[identity]
uuid = "15105645-61bc-559b-9e88-c11916719ac0"
primary-forge = "github"
primary-owner = "hyperpolymath"
canonical-name = "modshells"
prefixed-name = "nl-modshells"

[clade]
primary = "nl"
secondary = ["ix"]
assigned = "2026-03-16"
rationale = ""

[forges]
github = "hyperpolymath/modshells"
gitlab = "hyperpolymath/modshells"
bitbucket = "hyperpolymath/modshells"

[lineage]
type = "standalone"
parent = "Modular shell framework"
born = "2026-03-16"
18 changes: 18 additions & 0 deletions .machine_readable/anchors/ANCHOR.a2ml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# ⚓ ANCHOR: modshells
# This is the canonical authority for the modshells repository.

id: "org.hyperpolymath.modshells"
version: "1.0.0"
clade: "unknown"
status: "active"

# SSG Configuration (Unified boj-server build)
ssg:
engine: "casket"
output_dir: "public"
boj_trigger: true
cartridge: "ssg-mcp"

# Relationships
parents:
- "org.hyperpolymath.boj-server"
34 changes: 17 additions & 17 deletions 0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ This is the AI manifest for **modshells**. It declares:
### Machine-Readable Metadata: `.machine_readable/` ONLY

These 6 SCM files MUST exist in `.machine_readable/` directory ONLY:
1. **STATE.scm** - Project state, progress, blockers
2. **META.scm** - Architecture decisions, governance
3. **ECOSYSTEM.scm** - Position in ecosystem, relationships
4. **AGENTIC.scm** - AI agent interaction patterns
5. **NEUROSYM.scm** - Neurosymbolic integration config
6. **PLAYBOOK.scm** - Operational runbook
1. **.machine_readable/6a2/STATE.a2ml** - Project state, progress, blockers
2. **.machine_readable/6a2/META.a2ml** - Architecture decisions, governance
3. **.machine_readable/6a2/ECOSYSTEM.a2ml** - Position in ecosystem, relationships
4. **.machine_readable/6a2/AGENTIC.a2ml** - AI agent interaction patterns
5. **.machine_readable/6a2/NEUROSYM.a2ml** - Neurosymbolic integration config
6. **.machine_readable/6a2/PLAYBOOK.a2ml** - Operational runbook

**CRITICAL:** If ANY of these files exist in the root directory, this is an ERROR.

Expand All @@ -40,7 +40,7 @@ Bot-specific instructions for:

## CORE INVARIANTS

1. **No SCM duplication** - Root must NOT contain STATE.scm, META.scm, etc.
1. **No SCM duplication** - Root must NOT contain .machine_readable/6a2/STATE.a2ml, .machine_readable/6a2/META.a2ml, etc.
2. **Single source of truth** - `.machine_readable/` is authoritative
3. **No stale metadata** - If root SCMs exist, they are OUT OF DATE
4. **License consistency** - All code PMPL-1.0-or-later unless platform requires MPL-2.0
Expand All @@ -58,12 +58,12 @@ modshells/
├── README.md # Project overview
├── [your source files] # Main code
├── .machine_readable/ # SCM files (6 files)
│ ├── STATE.scm
│ ├── META.scm
│ ├── ECOSYSTEM.scm
│ ├── AGENTIC.scm
│ ├── NEUROSYM.scm
│ └── PLAYBOOK.scm
│ ├── .machine_readable/6a2/STATE.a2ml
│ ├── .machine_readable/6a2/META.a2ml
│ ├── .machine_readable/6a2/ECOSYSTEM.a2ml
│ ├── .machine_readable/6a2/AGENTIC.a2ml
│ ├── .machine_readable/6a2/NEUROSYM.a2ml
│ └── .machine_readable/6a2/PLAYBOOK.a2ml
└── .bot_directives/ # Bot instructions
```

Expand All @@ -73,8 +73,8 @@ modshells/
✅ Understand canonical locations (.machine_readable/, .bot_directives/)
✅ Know the invariants (no SCM duplication, etc.)
✅ Check for MCP enforcement (if applicable)
✅ Read `.machine_readable/STATE.scm` for current status
✅ Read `.machine_readable/AGENTIC.scm` for interaction patterns
✅ Read `.machine_readable/6a2/STATE.a2ml` for current status
✅ Read `.machine_readable/6a2/AGENTIC.a2ml` for interaction patterns

## LIFECYCLE HOOKS

Expand All @@ -86,15 +86,15 @@ When starting a new session:
2. Log session start (optional but recommended)
- Format: `[YYYY-MM-DD HH:MM:SS] Session started: [agent-name]`
- Location: `.machine_readable/session-log.txt`
3. Read `.machine_readable/STATE.scm`
3. Read `.machine_readable/6a2/STATE.a2ml`
4. Check for blockers
5. State understanding of canonical locations

### on-exit (Session End)

When ending a session:

1. Update `.machine_readable/STATE.scm` if changes made
1. Update `.machine_readable/6a2/STATE.a2ml` if changes made
2. Log session end (optional but recommended)
- Format: `[YYYY-MM-DD HH:MM:SS] Session ended: [summary]`
- Location: `.machine_readable/session-log.txt`
Expand Down
1 change: 1 addition & 0 deletions src/config_store/config_store.adb
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
-- SPDX-License-Identifier: PMPL-1.0-or-later
with Ada.Environment_Variables;
with Ada.Strings.Unbounded;
with Ada.Directories;
Expand Down
1 change: 1 addition & 0 deletions src/config_store/config_store.ads
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
-- SPDX-License-Identifier: PMPL-1.0-or-later
-- src/config_store/config_store.ads
package Config_Store is
-- ... other config definitions ...
Expand Down
Loading