Codync
免费开源的 1:1 Grok Bot 与 Muse 替代方案。可在 iPhone、Mac 或 Linux 桌面上将 Claude 代码、Codex、Cursor 以及 40 多个编码代理作为持久机器人使用。支持群组聊天、线程、应用。
AI 翻译
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证TypeScript libraries for building apps that both people and agents can read. Typed failures, Standard Schema validation, and the @arki/dot app kernel.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗TypeScript libraries for building apps that both people and agents can read.
Arki is a family of small @arki/* packages. Use one on its own, like
@arki/date or @arki/money. Or compose a whole backend with
@arki/dot: typed units for infra, features and entrypoints,
wired by the compiler and booted in declaration order.
Every package follows the same rules:
@arki/failure.--json output on
every CLI, an llms.txt and an agent guide in every package.The full list, with the reason behind each rule, is in
docs/arki/principles.md.
bun add @arki/dot @arki/failure
import { defineApp, infra } from '@arki/dot';
import { isFailure } from '@arki/failure';
import { openDb } from './db'; // your own database client
const database = infra({
name: 'database',
provides: { db: () => openDb(process.env.DATABASE_URL) },
async dispose({ db }) {
await db.close();
},
});
const app = await defineApp('pizzeria').infra(database).start();
if (isFailure(app)) throw new Error(app.code);
Read the @arki/dot README for features,
entrypoints and the dot CLI.
| Package | What it does |
|---|---|
@arki/dot | Compose an app from typed units; the compiler checks the wiring |
@arki/cli | Typed CLIs from one defineCommand, with a JSON envelope when piped |
@arki/env | Type-safe environment variables |
@arki/http | Route contracts as data, schema-validated handlers |
@arki/contracts | Shared schemas and Drizzle contract helpers |
@arki/db | Drizzle repositories for Postgres and PGlite |
@arki/journal | Every entity change as an immutable event row |
@arki/live | Live queries for oRPC and TanStack Query on your own Postgres |
@arki/kv | Key-value store with pluggable adapters |
@arki/lock | Distributed locks over memory, Postgres, SQLite, Redis and files |
| Package | What it does |
|---|---|
@arki/schema | Standard Schema helpers: parse with typed failures |
@arki/date | Temporal-based dates, instants, durations and intervals |
@arki/string | Grapheme-aware string toolkit |
@arki/math | Exact Decimal and Rational arithmetic on bigint |
@arki/money | Exact, fast money for every runtime |
@arki/expr | A safe expression language with a typed AST |
@arki/cas | A bounded computer algebra system on @arki/expr |
@arki/async | Abortable sleep, debounce, throttle and concurrency helpers |
@arki/clock | A clock you can control in tests |
@arki/resilience | Retry, circuit breaker, timeout and bulkhead |
Packages marked "private": true in their package.json are still in
development and are not published yet.
Every package is below 1.0. While a package is 0.x, a breaking change
ships as a minor release and a fix as a patch. Read a package's
CHANGELOG.md before you upgrade.
You need Bun (version in package.json) and Node 26.
Docker is needed for tests that start Postgres or Redis.
bun install
bun run build # build every package
bun run typecheck
bun run test
bun run lint
Work on one package with a Turbo filter:
bun run turbo run test --filter=@arki/date
Issues and pull requests are welcome. Start with CONTRIBUTING.md. Security issues go through SECURITY.md, never a public issue.
@arki/queue | Typed background jobs on BullMQ, pg-boss or a database row |
@arki/schedule | Typed cron and interval handlers |
@arki/mail | Typed mail with schema-checked templates and transport failover |
@arki/auth | Sign-in on Postgres or SQLite: one definition, one engine |
@arki/payments | Stripe plans, subscriptions, refunds, dunning and tax |
@arki/log | Zero-dependency structured logging for every runtime |
@arki/failure | Typed failures returned as values |
@arki/testing | Testcontainers Postgres and Redis, typed factories |
@arki/ui | React components on Base UI and Tailwind v4 tokens |
@arki/tanstack-start | TanStack Start wiring for Arki apps |
@arki/ai | Local-first AI: generation, embeddings, vector index |
@arki/embeddings | One embedder shape over many providers |
@arki/chat-ui | Chat and agent UI for React |
@arki/ts| TypeScript utility types |
@arki/icons | Iconify, Phosphor and flag icon sets behind one React entry |
@arki/bench | Publishable benchmarks against competitors |