/packages pond
The “non-std stdlib” — opinionated, domain-shaped libraries you vendor and
import. Extensible by tier, from infrastructure to agent orchestration.
$hale fetch
Vendoring is the v1 dependency primitive — pin a git ref, vendor the source.
Graduated to the stdlib: the HTTP client, the router, and
metrics were promoted out of pond — they now ship as
std::http (client + Router) and
std::metrics, no import needed. pond keeps tracking copies;
new code should use the stdlib.
Tier 0 — internals
_util/* | intfloat, decimal_float, duration_int, kvpack, rowbuf — shared primitives |
Tier 0 — infrastructure
crypto | HMAC-SHA256, SHA-256, ECDSA P-256, CSPRNG, hex |
subprocess | fork/exec with pipes, timeout, try_wait + signal |
math/matrix · math/stats | dense matrix, matmul, online moments |
Tier 1 — data + web
db | backend-neutral DbDriver interface (Go database/sql shape) |
pq | Postgres driver — pgwire v3 over TCP, + pool |
sqlite | SQLite driver via @ffi — prepared statements + rows |
sessions · jobs · migrations | cookie sessions, job queue, schema runner |
Tier 2 — observability
tracing | span tree mirroring the locus tower |
logfmt · supervisor | structured log sinks, restart strategies |
Tier 3 — realtime
websocket | RFC 6455 client + server-side upgrade |
Tier 5 — agents
agent/llm | Anthropic / OpenAI clients with SSE streaming |
agent/tools · conversation · sandbox · embeddings | tool registry, chat history, code sandbox, vector store |
ml/neural | tiny NN trainer |