Skip to content

Instantly share code, notes, and snippets.

@nazt
Last active May 2, 2026 07:16
Show Gist options
  • Select an option

  • Save nazt/7e1a253a4ecf97b7f4b5b0e07c677b5e to your computer and use it in GitHub Desktop.

Select an option

Save nazt/7e1a253a4ecf97b7f4b5b0e07c677b5e to your computer and use it in GitHub Desktop.
Soul Brews Studio — Relationship Map (repos, ports, URLs)

Soul Brews Studio — Relationship Map

Generated 2026-05-02 by sbs-repo-oracle

arra-oracle-v3 (:47778)
  ├─→ studio.buildwithoracle.com     ui-oracle/apps/studio    :3000
  ├─→ vector.buildwithoracle.com     ui-oracle/apps/vector    :5173
  ├─→ canvas.buildwithoracle.com     ui-oracle/apps/canvas    :5173
  ├─→ feed.buildwithoracle.com       ui-oracle/apps/feed      :5174
  ├─→ forum.buildwithoracle.com      ui-oracle/apps/forum     :5174
  ├─→ schedule.buildwithoracle.com   ui-oracle/apps/schedule  :5173
  ├── arra-cli (plugin system)       cli/src/cli.ts           20 plugins
  ├── oracle-cli (standalone)        oracle-cli/src/index.ts  HTTP client
  ├── MCP server (stdio)             src/index.ts             18 tools
  └── arra-oracle-skills-cli         skill installer           30+ skills

maw-js (:3456)
  ├─→ shrine.buildwithoracle.com     maw-ui/shrine
  └─→ god.buildwithoracle.com        maw-ui

pulse-cli
  └─→ pulse.buildwithoracle.com      Pulse-Oracle/pulse-site

Repos

Service Repo Description
arra-oracle-v3 Soul-Brews-Studio/arra-oracle-v3 MCP Memory Layer — semantic search, vector, philosophy
ui-oracle Soul-Brews-Studio/ui-oracle UI monorepo — studio, vector, canvas, feed, forum, schedule
oracle-cli Soul-Brews-Studio/oracle-cli Standalone CLI wrapper (arra-cli npm package)
arra-oracle-skills-cli Soul-Brews-Studio/arra-oracle-skills-cli Skill installer for Claude Code + 12 AI agents
maw-js Soul-Brews-Studio/maw-js Multi-Agent Workflow orchestrator
maw-ui Soul-Brews-Studio/maw-ui ARRA Office — fleet dashboard
pulse-cli Pulse-Oracle/pulse-cli GH Projects Master Board CLI — 22 commands
pulse-site Pulse-Oracle/pulse-site Pulse docs site

URLs

URL Source Backend
studio.buildwithoracle.com ui-oracle/apps/studio arra-oracle-v3 :47778
vector.buildwithoracle.com ui-oracle/apps/vector arra-oracle-v3 :47778
canvas.buildwithoracle.com ui-oracle/apps/canvas arra-oracle-v3 :47778
feed.buildwithoracle.com ui-oracle/apps/feed arra-oracle-v3 :47778
forum.buildwithoracle.com ui-oracle/apps/forum arra-oracle-v3 :47778
schedule.buildwithoracle.com ui-oracle/apps/schedule arra-oracle-v3 :47778
shrine.buildwithoracle.com maw-ui/shrine maw-js :3456
god.buildwithoracle.com maw-ui maw-js :3456
pulse.buildwithoracle.com Pulse-Oracle/pulse-site static

Dev Ports

Port Service
:47778 arra-oracle-v3 (Elysia)
:3456 maw-js HTTP API
:3000 ui-oracle/apps/studio
:5173 ui-oracle/apps/vector, canvas, schedule ⚠️
:5174 ui-oracle/apps/feed, forum ⚠️

arra-oracle-v3 Full Breakdown

Identity

  • Repo: Soul-Brews-Studio/arra-oracle-v3
  • Version: 26.4.20-alpha.9
  • Port: :47778 (env: ORACLE_PORT)
  • Data dir: ~/.arra-oracle-v2/
  • DB: SQLite + FTS5 (oracle.db) — 54 docs, 110 concepts
  • Vector: LanceDB (bge-m3, 1024-dim, via Ollama)
  • OracleNet: urchin-app-csg5x.ondigitalocean.app

Three Entry Points + Standalone Client

bin/arra.ts → src/server.ts       HTTP API (Elysia) → :47778
src/index.ts                      MCP Server (stdio) → Claude Code (18 tools)
cli/src/cli.ts                    CLI (plugin system) → terminal (20 plugins)
oracle-cli (separate repo)        Standalone HTTP client → :47778

MCP Tools (18)

Tool Type Handler
arra_search read src/tools/search.ts
arra_read read src/tools/read.ts
arra_learn write src/tools/learn.ts
arra_list read src/tools/list.ts
arra_stats read src/tools/stats.ts
arra_concepts read src/tools/concepts.ts
arra_supersede write src/tools/supersede.ts
arra_handoff write src/tools/handoff.ts
arra_inbox read src/tools/inbox.ts
arra_thread write src/tools/forum.ts
arra_threads read src/tools/forum.ts
arra_thread_read read src/tools/forum.ts
arra_thread_update write src/tools/forum.ts
arra_trace write src/tools/trace.ts
arra_trace_list read src/tools/trace.ts
arra_trace_get read src/tools/trace.ts
arra_trace_link write src/tools/trace.ts
arra_trace_unlink write src/tools/trace.ts
arra_trace_chain read src/tools/trace.ts

Arra CLI — Plugin System (20 plugins)

Architecture

cli/src/
  cli.ts                    Main dispatcher (235 lines)
  lib/api.ts                HTTP bridge → localhost:47778
  plugin/
    types.ts                PluginManifest, InvokeContext
    loader.ts               Discovers bundled + user plugins (~/.neo-arra/plugins)
    registry.ts             Sorts by weight, resolves commands/aliases
    invoke.ts               Dynamic import() + 5s timeout
    manifest.ts             JSON validation
  commands/
    plugins-*.ts            Plugin management (install/list/remove/info)
    session-*.ts            Session inspection (list/show/context)
    menu-*.ts               Menu customization (list/add/remove/gist/reset)
    _output.ts              Output formatting
  plugins/
    {search,learn,list,read,...}/
      plugin.json           Manifest
      index.ts              Handler

Plugin Commands

# Plugin Weight Command API Endpoint
1 search 10 arra-cli search "query" GET /api/search?q=
2 stats 10 arra-cli stats GET /api/stats
3 reflect 10 arra-cli reflect GET /api/reflect
4 learn 20 arra-cli learn "pattern" POST /api/learn
5 list 30 arra-cli list GET /api/list
6 trace 40 arra-cli trace traces API
7 trace-list 41 arra-cli trace-list traces API
8 trace-get 42 arra-cli trace-get <id> GET /api/traces/:id
9 trace-chain 41 arra-cli trace-chain <id> trace chain API
10 read 50 arra-cli read <id> GET /api/read
11 threads 50 arra-cli threads GET /api/threads
12 thread 51 arra-cli thread <id> GET /api/threads/:id
13 supersede-list arra-cli supersede-list supersede API
14 supersede-chain arra-cli supersede-chain supersede API
15 schedule arra-cli schedule schedule API
16 plugin arra-cli plugin list|install|remove local
17 hello arra-cli hello example
18 export-obsidian arra-cli export-obsidian local (256 lines)
19 import-obsidian arra-cli import-obsidian local (108 lines)

Built-in Subcommands (not plugins)

arra-cli session list|show|context    Inspect session state
arra-cli menu list|add|remove|gist-*  Manage studio menu
arra-cli plugin list|info|install|rm  Plugin management

Environment Variables

Env Var Purpose Default
NEO_ARRA_API Server URL http://localhost:47778
ARRA_PLUGIN_TIMEOUT_MS Plugin timeout 5000
ORACLE_PORT Server port 47778

Plugin Manifest Format

{
  "name": "arra-search",
  "version": "1.0.0",
  "entry": "./index.ts",
  "sdk": "^0.0.1",
  "weight": 10,
  "cli": {
    "command": "search",
    "aliases": ["s"],
    "help": "arra-cli search \"<query>\" [--limit N]",
    "flags": { "--limit": "Max results", "--type": "Filter type" }
  }
}

Standalone CLI: oracle-cli

  • Repo: Soul-Brews-Studio/oracle-cli (v0.2.0)
  • npm: published as arra-cli (bin: arra)
  • Usage: bunx github:Soul-Brews-Studio/oracle-cli search "patterns"
  • 13 commands: search, learn, list, stats, threads, schedule, traces, inbox, server, vault, + more
  • Lightweight HTTP wrapper — all calls go to arra-oracle-v3 :47778

HTTP API Routes (17 modules)

Prefix Module Endpoints
/api/auth auth status, login, logout
/api/settings settings get, update
/api/feed feed list, create
/api/health health health, stats, oracles
/api/dashboard dashboard summary, activity, growth, session-stats
/api/search search search, reflect, similar, map, map3d, list
/api/compare compare compare, agreement
/api/learn knowledge learn, handoff, inbox
/api/supersede supersede list, create, chain
/api/forum forum threads-list, thread-create, thread-get, thread-status
/api/traces traces list, get, link, unlink, chain, linked-chain
/api/schedule schedule list, create, update, md
/api/files files graph, context, file, read, doc, logs, plugins, plugin-by-name
/api/plugins plugins list, get-by-name
/api/oraclenet oraclenet feed, oracles, presence, status
/api/sessions sessions summary
/api/vault vault sync
/api/menu menu menu, custom, admin, studio-href, studio-tag, admin-order, admin-source

Vector Adapters (5)

src/vector/adapters/
  ├── lancedb.ts              ← default (production)
  ├── sqlite-vec.ts
  ├── qdrant.ts
  ├── chroma-mcp.ts
  └── cloudflare-vectorize.ts

Source Tree

src/
  index.ts                    MCP server (stdio)
  server.ts                   HTTP server (Elysia :47778)
  config.ts                   Path + port resolution
  const.ts                    Pure constants
  types.ts                    Shared types

  tools/                      MCP tool handlers (18 tools)
  routes/                     HTTP API (17 modules, 50+ endpoints)
  db/                         SQLite + Drizzle ORM
  vector/                     Vector search (5 adapters)
  vault/                      ψ/ vault operations
  indexer/                    Content indexing pipeline
  trace/                      Trace system
  forum/                      Forum/thread engine
  menu/                       Navigation menu system
  verify/                     Identity verification
  process-manager/            Graceful shutdown + health
  server/                     HTTP server utilities
  cli/                        CLI interface (src/cli/)
  config/                     Tool group config

cli/                          Plugin-based CLI (cli/src/)
  src/cli.ts                  Main dispatcher
  src/lib/api.ts              HTTP bridge
  src/plugin/                 Plugin framework
  src/commands/               Built-in subcommands
  src/plugins/                20 bundled plugins

bin/                          Entry points
web/                          Built-in web UI
tests/                        Test suites
e2e/                          End-to-end tests
scripts/                      Utility scripts
docs/                         Documentation

Scripts

Script What
dev Dev server
serve / server Production HTTP
start MCP stdio server
index Run content indexer
test / test:unit / test:integration Tests
vault:init / vault:sync / vault:migrate ψ/ vault ops
db:generate / db:migrate / db:studio Drizzle DB

Known Bugs

Vector issues (from Sage Oracle gist)

File Bug Location
src/vector/factory.ts LanceDB default = L2, should be cosine for bge-m3 createVectorStore()
src/vector/embeddings.ts No instruction prefix for bge-m3 queries vs passages embed()
src/tools/learn.ts:171 Single vector per doc, no chunking (despite types.ts:10 promise) handleLearn()

CLI issues (from Hermes Oracle)

Issue Description
JSON-only output CLI defaults to JSON, breaks jq with Thai text. Needs --json flag + human-readable default
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment