piker/ai
Gud Boi efa72980f8 Raise on IB socket disconnects in proxy and trades
Propagate the authoritative `disconnectedEvent` as a
`ConnectionError` so proxy callers and trade consumers fail loudly
instead of waiting on a dead socket. Preserve the last `apiError`
text as the reason without treating numeric farm/order errors as
socket failures.

Deats,
- Disconnect the one-shot callback before sending the exception.
- Raise when `recv_trade_updates()` loses its socket, and relay
  disconnect exceptions through both Trio-side consumers.
- Exercise real `eventkit` error/disconnect callbacks and preserve
  the supplied commission fill while testing bridge termination.
- Record the aborted integration stage as historical provenance;
  its test passes do not validate this post-abort boundary.

Prompt-IO: ai/prompt-io/opencode/20260916_ib_connectivity_integration.md

(this patch was generated in some part by `opencode` using
`gpt-6-astra` (`openai`))
2026-09-17 18:24:17 -04:00
..
claude-code Add `piker-clearing-expert` skill 2026-08-27 23:24:54 -04:00
opencode Add `piker-clearing-expert` skill 2026-08-27 23:24:54 -04:00
prompt-io Raise on IB socket disconnects in proxy and trades 2026-09-17 18:24:17 -04:00
README.md Add `piker-clearing-expert` skill 2026-08-27 23:24:54 -04:00

README.md

AI Tooling Integrations

Documentation and usage guides for AI-assisted development tools integrated with this repo.

Each subdirectory corresponds to a specific AI tool or frontend and contains usage docs for the custom skills/prompts/workflows configured for it.

Originally introduced in PR #69; track new integration ideas and proposals in issue #79.

Integrations

Tool Directory Status
Claude Code claude-code/ active
OpenCode opencode/ active

Shared Skills

Provider-neutral skill bundles should use the portable Agent Skills subset and live under .agents/skills/ as their single source. OpenCode discovers that project directory natively. Relative links in provider directories such as .claude/skills/ may bridge clients which do not yet scan .agents/skills/; never copy the skill body.

Existing repo skills under .claude/skills/ predate this convention and can migrate separately without coupling their history to new skills.

Harness-specific command files should only delegate to a shared skill. They must not duplicate the skill body.

Adding a New Integration

Create a subdirectory named after the tool (use lowercase + hyphens), then add:

  1. A README.md covering setup, available skills/commands, and usage examples
  2. Any tool-specific config or prompt files
ai/
├── README.md                  # <- you are here
├── claude-code/
│   └── README.md
├── opencode/
│   └── README.md
└── <your-tool>/
    └── README.md

Conventions

  • Skill/command names use hyphen-case (commit-msg, not commit_msg)
  • Each integration doc should describe what the skill does, how to invoke it, and any output artifacts it produces
  • Keep docs concise; link to the shared skill source files rather than duplicating content
  • Keep skill bodies harness-neutral; isolate slash-command syntax and permissions in each harness integration