honcho/sdks/typescript
adavyas fc9de0f0d9 Add workspace-level chat (DEV-1326)
POST /v3/workspaces/{workspace_id}/chat: agentic dialectic over the whole
workspace instead of a single (observer, observed) pair. Salvaged from
plastic-labs/honcho#373 and re-grown on today's DialecticAgent:

- WorkspaceDialecticAgent subclasses DialecticAgent via four new seams
  (_get_tools, _create_tool_executor, _prefetch_intro, _trace_name) instead
  of a base-class extraction; observer/observed use empty-string sentinels.
- Routing-accelerated prefetch: workspace stats + top-5 active peers with
  their self peer-cards (pure DB, ~7ms measured) so routing-obvious queries
  resolve without a discovery tool round.
- Observation search stays pair-scoped (matches per-pair vector namespaces;
  avoids workspace-flat top-k dilution): search_memory/get_peer_card take
  observer/observed as tool arguments, with pair attribution in results.
- workspace_chat / workspace_chat_stream orchestrators, WorkspaceChatOptions
  schema (scope param seam left for the #897 scopes facade), SSE streaming,
  structured output via response_format.
- crud: get_workspace_stats, get_active_peers; format_documents_with_attribution.
- SDKs: Python Honcho.chat/chat_stream + HonchoAio mirrors; TypeScript
  honcho.chat/chatStream.
- 46 tests (route, orchestrator preflight, tool handlers, executor routing,
  attribution formatting) + unified test cases + docs.

Co-Authored-By: doria <93405247+dr-frmr@users.noreply.github.com>
Co-Authored-By: Benjamin McCormick <docterformer@protonmail.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-30 10:35:14 -04:00
..
__tests__ feat(dialectic): optional structured outputs with limited schema for Dialectic calls (#896) 2026-07-20 18:46:49 -04:00
examples feat: honcho 3.0, sdks 2.0, excise stainless, update v3 docs, changelogs (#331) 2026-01-22 15:16:28 -05:00
src Add workspace-level chat (DEV-1326) 2026-07-30 10:35:14 -04:00
.gitignore Add Pre-commit Hooks (#165) 2025-07-22 15:17:53 -04:00
CHANGELOG.md chore(docs): SDK Updates (#867) 2026-07-02 13:00:14 -04:00
README.md feat: retry on more httpx exceptions (#467) 2026-04-03 12:20:53 -04:00
biome.json feat: add filter params everywhere (#164) 2025-07-21 13:40:30 -04:00
bun.lock ts SDK fix: adding strict checking (#421) 2026-03-30 10:57:12 -04:00
bunfig.toml feat: honcho 3.0, sdks 2.0, excise stainless, update v3 docs, changelogs (#331) 2026-01-22 15:16:28 -05:00
package.json chore(docs): SDK Updates (#867) 2026-07-02 13:00:14 -04:00
tsconfig.json API/SDK updates: configurability, more parameters. Unified test harness (#283) 2025-12-03 16:49:30 -05:00

README.md

Honcho TypeScript SDK

A high-level, ergonomic TypeScript SDK for the Honcho conversational memory platform. Provides a user-friendly API for managing peers, sessions, and conversational context.

Installation

npm install @honcho-ai/sdk

Usage

import { Honcho } from "@honcho-ai/sdk";

const honcho = new Honcho({
  apiKey: process.env.HONCHO_API_KEY,
  baseURL: "http://localhost:8000",
  workspaceId: "test",
});

const assistant = await honcho.peer("bob");
const alice = await honcho.peer("alice");

await honcho.peers();

const session = await honcho.session("session_1");
await session.addPeers([alice, assistant]);

await session.addMessages([
  assistant.message("What did you have for breakfast today, alice?"),
  alice.message("I had oatmeal."),
]);

const response = await alice.chat("what did alice have for breakfast today?");
console.log(response);

See examples/ for more.

Development

Type checking

bun run typecheck

Testing

Tests for the SDK live in tests/ at the monorepo root and are run via pytest, which orchestrates a test server. Do not run bun test directly.

# From the monorepo root
uv run pytest tests/ -k typescript