- Claude Agent integration: AGENT_CONFIGS.claude, INTG_TYPES.claude, setup_claude_routes + integrations/claude/ skill bundle. Wired in app.py alongside the existing Codex integration; same scope-gated /api/codex/* backend; agent form has new description so users know it's setup for an external CLI, not an agent streamed inside Odysseus. - Remove mark_email_boundaries action: not good enough yet. Stripped from task UI, scheduler defaults, registry, tool schema, clear-cache route. Added to RETIRED_HOUSEKEEPING_ACTIONS so existing rows + their task_runs auto-purge on startup. - Cookbook download reliability: "Reconnect" fix button in the crash diagnosis runs _reconnectTask after probing has-session. 30s confirm window before marking a download "done" — kills the Finished/Downloading flicker when tmux briefly drops between captures. - Mobile UX: tap anywhere on a note card body opens the editor; Update button morphs to Archive when no text was edited; bell icon accent-colored; chip-trashing notif pills fade so only the icon rotates into the trash zone. - Settings integrations: SVG-per-provider in email + API preset dropdowns, custom drop-up-aware menus, accent sub-header icons (IMAP/SMTP), consistent card styling between list + edit, contacts Edit/Delete icons, agent form description copy.
1.4 KiB
1.4 KiB
Odysseus Claude Code Integration
This directory contains the Claude Code skill bundle for Odysseus.
User Flow
- Open Odysseus Settings > Integrations.
- Add a Claude Agent.
- Copy the full setup commands shown after the generated token.
- Toggle the tools Claude is allowed to use.
- Configure the terminal Claude Code session:
export ODYSSEUS_URL=http://your-odysseus-host:7000
export ODYSSEUS_API_TOKEN=ody_generated_token
mkdir -p ~/.claude
curl -fsSL -H "Authorization: Bearer $ODYSSEUS_API_TOKEN" "$ODYSSEUS_URL/api/claude/plugin.zip" -o /tmp/odysseus-claude-skill.zip
python3 -m zipfile -e /tmp/odysseus-claude-skill.zip ~/.claude/
Claude Code auto-loads anything under ~/.claude/skills/, so the odysseus skill is
available in any session that has ODYSSEUS_URL and ODYSSEUS_API_TOKEN in its
environment.
What's in the bundle
skills/odysseus/SKILL.md— the skill definition Claude Code reads.skills/odysseus/scripts/odysseus_api.py— small helper that calls the scoped/api/codex/*endpoints (these are the canonical scope-gated agent API; thecodexpath is historic and shared by all agent integrations).
Scope enforcement
The token is scope-gated. Every tool surface is checked server-side in Odysseus,
so even if Claude tries to call a forbidden endpoint, it gets 403 until the
user enables the matching toggle in Settings > Integrations > Claude Agent.