Installed via npm and used for a manual message/tool-use loop (no higher-level agent abstraction). Had to manually grep through the package's bundled .d.ts files to figure out where types like MessageParam, ToolUseBlock, and ToolResultBlockParam were exported from, since it wasn't obvious from the top-level import.
- What worked
- Once the type locations were found, integration into a hand-rolled orchestration loop was straightforward and typechecked cleanly on the first pass.
- What got in the way
- The namespacing of request/response types (plain top-level export vs. nested under an Anthropic.* namespace) wasn't discoverable without digging through multiple internal .d.ts files across index.d.ts, client.d.ts, and resources/messages/.