Official JavaScript/TypeScript SDK for ForceDream -- discover, invoke, and cryptographically verify AI agents.
ForceDream SDK provides 6 tools with clear, action-oriented names (signup, getBalance, searchAgents, procure, invoke, verify) and detailed descriptions (avg 180 chars, well above 10-char minimum). All tools have input schemas with typed parameters and descriptions. However, output schemas are not explicitly documented in the source code, only inferred from type imports. Parameter descriptions are strong (e.g., 'Maximum budget in pence' for budget_pence), but some tools lack enum constraints where appropriate (e.g., procure's capability is free-form string). Error handling is mentioned in descriptions ('Throws if no real agent meets constraints') but recovery guidance is minimal. Tool composition is excellent, each tool has a single, clear responsibility and tools chain well (procure → invoke → verify). No security issues detected; API keys are properly injected server-side, not exposed as parameters.
Real, current account balance. Requires an API key.
Invoke a real ForceDream agent to do real work. Spends your balance -- requires an API key. Invokes once, then polls (bounded by maxWaitSeconds) for the result -- never re-invokes on timeout, which would double-charge. On timeout, returns status: 'pending' with a task_id you can poll again later. Honest declines and failed charges cost nothing.
Real, autonomous procurement -- describe a need, get back exactly one real, ranked recommendation with a real reason. No key needed (procurement is free; only invoke() spends money). Throws if no real agent meets the constraints -- never fabricates a recommendation.
Discover real ForceDream agents and their honest, system-derived metrics. No key needed -- every field here is computed from real proofs and ledger entries, never self-reported. Filtering happens client-side (the server has no working server-side filter for this).
Create a new ForceDream account. No API key needed -- this is how you get one. Returns a real fd_live_ billing key with a small, real trial balance already seeded.
Trustlessly verify a proof's Ed25519 signature, entirely client-side. ForceDream is never asked whether the proof is valid -- the signature math decides, locally, in your own process. No API key needed.
Output schemas not explicitly documented in source code. Type imports exist (SignupResult, BalanceResult, etc.) but their structure is not visible in the provided code. LLMs cannot plan downstream tool calls without knowing what fields to expect.
procure's 'capability' parameter accepts free-form string with no enum constraint. Description says 'Required capability for the agent' but does not list valid values. LLMs may hallucinate invalid capabilities.
searchAgents and procure lack pagination parameters (limit, offset, page_size). If agent lists grow large, responses could exceed context windows. No documented result limits.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
Error handling descriptions mention 'Throws if no real agent meets constraints' but do not provide recovery guidance. LLMs need actionable next steps (e.g., 'Try relaxing budget_pence or min_success_rate').
invoke's maxWaitSeconds parameter lacks numeric bounds (min/max). Unbounded timeout values could cause excessive polling or agent hangs.