AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Contacts

skill-soul-brews-studio-arra-oracle-skills-cli-contacts · by Soul-Brews-Studio

Manage Oracle contacts — add, list, remove agents with their transport info (maw, inbox, thread). Use when user says "contacts", "add contact", "register agent", "who can I talk to", "list contacts". Do NOT trigger for sending messages (use /talk-to) or family registry (use /oracle-family-scan).

No reviews yet
0 installs
34 views
0.0% view→install

Install

$ agentstack add skill-soul-brews-studio-arra-oracle-skills-cli-contacts

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-soul-brews-studio-arra-oracle-skills-cli-contacts)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
3mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Contacts? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

/contacts - Oracle Contact Registry

Manage contacts for /talk-to routing. Stored in repo at ψ/contacts.json — committable, shareable.

Step 0: Ground (date-stamp + root capture)

Run before any mode — current-time reference for the AI (#301) plus absolute $PSI so announce-mode writes show clickable paths (CONVENTIONS.md).

date "+🕐 %H:%M %Z (%A %d %B %Y)"
ORACLE_ROOT=$(git rev-parse --show-toplevel 2>/dev/null || pwd)
PSI="$ORACLE_ROOT/ψ"
CONTACTS_FILE="$PSI/contacts.json"

File Location

ψ/contacts.json

If ψ/ doesn't exist, use .oracle/contacts.json as fallback.

Schema

{
  "contacts": {
    "peter": {
      "maw": "peter-oracle",
      "thread": "channel:peter",
      "inbox": "/home/peter/Code/peter-oracle/ψ/inbox",
      "repo": "laris-co/peter-oracle",
      "notes": "Frontend dev, available weekdays"
    },
    "pulse": {
      "maw": "pulse-oracle",
      "thread": "channel:pulse",
      "inbox": null,
      "repo": "laris-co/pulse-oracle",
      "notes": "PM bot"
    }
  },
  "updated": "2026-03-23T22:30:00Z"
}

Usage

/contacts                    # list all
/contacts list               # same
/contacts add peter          # interactive — ask transports one by one
/contacts add peter --maw peter-oracle --inbox /path/ψ/inbox
/contacts remove peter       # remove (with confirmation)
/contacts show peter         # show details for one contact

Mode 1: List (default)

Read ψ/contacts.json. Display:

📇 Contacts (4)

  #  Name           maw              repo                    inbox
  ── ────────────── ──────────────── ─────────────────────── ──────
  1  peter          peter-oracle     laris-co/peter-oracle    ✓
  2  pulse          pulse-oracle     laris-co/pulse-oracle    ✗
  3  hermes         hermes-oracle    laris-co/hermes-oracle   ✓
  4  neo            neo-oracle       laris-co/neo-oracle      ✓

If no contacts file exists:

📇 No contacts yet.

  /contacts add     — register a new contact

Mode 2: Add

/contacts add

Ask each transport one by one. User can skip any with Enter.

📇 Register: peter

  1. maw name? (for `maw hey `)
     → peter-oracle

  2. Thread channel? (for Oracle threads)
     → channel:peter  [default: channel:{name}]

  3. Inbox path? (for direct ψ/inbox/ writes)
     → /home/peter/Code/peter-oracle/ψ/inbox
     (Enter to skip — not all agents have accessible inbox)

  4. Repo? (org/repo on GitHub)
     → laris-co/peter-oracle  [default: guess from maw name]

  5. Notes? (optional)
     → Frontend dev, Thai timezone

With flags

/contacts add peter --maw peter-oracle --inbox /path/ψ/inbox

Skip interactive for provided flags. Still ask for missing ones.

Save

# Read existing — $CONTACTS_FILE comes from Step 0 (absolute, via $PSI).
mkdir -p "$(dirname "$CONTACTS_FILE")"

# If file doesn't exist, create empty
if [ ! -f "$CONTACTS_FILE" ]; then
  echo '{"contacts":{},"updated":""}' > "$CONTACTS_FILE"
fi

Use jq or Write tool to update the JSON. Set updated to current ISO timestamp.

Commit

After adding, ask:

✅ Added peter. Commit? [Y/n]

If yes:

git add ψ/contacts.json
git commit -m "contacts: add peter"

Mode 3: Remove

/contacts remove

Show the contact details, ask confirmation:

Remove peter?
  maw: peter-oracle
  thread: channel:peter
  inbox: /home/peter/.../ψ/inbox

  [Y/n]

If yes, remove from JSON, save, optionally commit.


Mode 4: Show

/contacts show

📇 peter

  maw:     peter-oracle
  thread:  channel:peter
  inbox:   /home/peter/Code/peter-oracle/ψ/inbox
  repo:    laris-co/peter-oracle
  notes:   Frontend dev, Thai timezone

Integration with /talk-to

/talk-to should read ψ/contacts.json before routing:

  1. Parse agent name from arguments
  2. Check ψ/contacts.json → found? Use registered transports
  3. Not found? → Ask: "I don't know {name}. Run /contacts add {name}?"
  4. After registration → retry the message

ARGUMENTS: $ARGUMENTS

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.