高速 · req/s(c=50)
47,200req/s
Go(42,800)とNode(38,700)を上回る1。ネイティブ非同期、真のマルチコア、単一の静的バイナリ、ランタイム不要。
プログラミング言語 · AIエージェントフレームワーク · デフォルトで安全
ひとつのURLをコンテントネゴシエーションで。Synsemaは、エージェントフレームワークを内蔵した、高速でデフォルトで安全なAIエージェント向けプログラミング言語です。同じルートが人にはHTMLを、モデルにはMarkdownを返します。パネルを切り替えると、LLMがこのページから受け取るMarkdownそのものが見えます。
try.synsema.com で作りながら学ぶ:本物のサンドボックス付きのコース、インストール不要。
# Synsema > AIエージェントのためのプログラミング言語。 ## 何であるか - 高速。 47,200 req/s、GoとNodeを上回る。 - デフォルトで安全。 `require` がなければアクセスなし。 - エージェントネイティブ。 ひとつのルート、HTMLかMarkdown。 ## インストール curl -fsSL synsema.com/install.sh | sh エージェント向けインデックス: /llms.txt
AIエージェントのためのプログラミング言語。
↑ 同じリソース、ふたつの表現 · curl -H "Accept: text/markdown" synsema.com/ja
高速 · req/s(c=50)
47,200req/s
Go(42,800)とNode(38,700)を上回る1。ネイティブ非同期、真のマルチコア、単一の静的バイナリ、ランタイム不要。
デフォルトで安全
-- require がなければアクセスなし require net("api.shop.com") fetch("api.shop.com") ✓ 許可 fetch("evil.com") ⊘ 拒否
require がなければアクセスはありません。拒否するのはコードレビューではなくインタプリタです。認証、バリデーション、intentは宣言的です。
エージェントネイティブ
このページそのものがデモです。すべてのルートが人にはHTMLを、エージェントにはMarkdown/JSONを返し、/llms.txt、/sitemap.xml、/openapi.json はルートテーブルから導出されます。
ドキュメントは MCPサーバー を公開しています。エージェントはひとつのエンドポイントで検索・閲覧・実行・テストができます。
1 · Linux VPS上で計測、6ワークロード、c=50、複数回実行の中央値(初回は除外)。再現用ハーネス: synsema-arena。
これで作れるもの
エージェント型アプリに必要なものはすべて言語の中にあり、上に貼り付けたフレームワークにはありません。LLM呼び出し、ツール利用、メモリ、人間による承認、マルチエージェントのオーケストレーション、本番用サーバー、そしてセキュリティモデル。だから同じ言語で、エージェントの周りのAPI、サイト、cron、CLIも作れます。
エージェント
reason、decide、analyze、generate はプリミティブ。検証済みの応答、リトライ、任意のプロバイダ、シークレットとして封印された鍵。
バックエンド
ルート、宣言的な認証とバリデーション、ページネーション、SQLite、Postgres、MySQL、Mongo、Redis。1ファイルに、本番用サーバー込みで。
docs ↗Web
テンプレート、レイアウト、コンポーネント。すべてのページがエージェント向けにネゴシエートされ、/llms.txt、サイトマップ、OpenAPIが無料で付いてきます。このサイトもそのひとつ。
アプリ
synsema init --desktop:同じサーバーレンダリングのアプリが、AndroidとiOSにはネイティブプッシュ付きPWAとしてインストールされ、デスクトップにはデスクトップアプリとして配布できます — 単一バイナリ、ブラウザのアプリウィンドウ、あなたのアイコン、コンソールなし。
1ファイル
Synsemaのプログラムは、何に触れてよいかを宣言することから始まります。その行より下のすべて(ルート、データベース、シークレット、モデル)はその中で動きます。下のふたつのファイルはこのままパースされ、実行されます。
-- A bookshop API. The `require` lines are the whole permission
-- surface: a port, one database file, one secret. Nothing else.
intent: "public read API; writes need the staff token"
require serve(8080)
require db("./shop.db")
require secret("API_TOKEN")
task check_token(token)
let want be hmac_sha256("staff", token)
when verify_hmac("staff", want, secret("API_TOKEN"))
give {"role": "staff"}
give nothing
serve on 8080
auth with check_token
rate_limit 120 per minute
route "GET /books"
give paged("SELECT id, title, price FROM books")
route "POST /books" requires auth
expect body {title: text, price: number}
let b be json of request
sql_exec("INSERT INTO books (title, price) VALUES (?, ?)",
[b.title, b.price])
give created(b)
route "GET /about"
let doc be page([heading(1, "Bookshop"),
prose("HTML or Markdown, one route.")],
{"title": "Bookshop"})
give content(doc)-- An agent that triages support tickets. The model decides;
-- a human approves refunds; the API key is a sealed secret.
intent: "triage open tickets; refunds wait for a human"
require llm
require net("api.example.com")
require secret("SUPPORT_TOKEN")
let api be "https://api.example.com"
let auth be {"Authorization": bearer(secret("SUPPORT_TOKEN"))}
let r be http_get(api + "/tickets?open=1", auth)
let tickets be json_decode(body of r)
each t in tickets
let msg be t["text"]
let kind be decide between ["bug", "billing", "other"] given msg
when kind == "billing"
let amount be analyze msg for "the amount to refund"
let who be t["customer"]
approve "Refund " + text(amount) + " to " + who + "?" within 1h
otherwise
let reply be generate "a short, kind answer" given msg
let url be api + "/tickets/" + t["id"] + "/reply"
http_post(url, {"text": reply}, auth)require が権限の全面です。 ポートひとつ、データベースファイルひとつ、シークレットひとつ。他のホストへの fetch はインタプリタが拒否します。auth with がトークンの正体を決めるタスクを指名し、expect body は不正なペイロードをフィールド名付きの400で弾きます。content() はブラウザにHTML、エージェントにMarkdownかJSONを返し、paged() は大きな結果を自動でページングします。decide は選択肢のひとつを返すかリトライし、analyze と generate は型付きで、手で貼り合わせたプロンプト文字列ではありません。approve … within 1h は本物の人を待ち、誰もいなければ拒否します。Synsemaで作られたもの
コーディングエージェント
ターミナルとブラウザで動くオープンソースのAIコーディングエージェント。すべてSynsemaで書かれています。ツールはプロジェクト内に閉じ込められ、権限はあなたの管理下、サブエージェント、スケジュールタスク、プラグイン。
lampson.org ↗エージェントのケイパビリティ
持ち運べるケイパビリティの単位。マニフェストがコードの触れてよい範囲を宣言し、ランタイムがそれを強制して呼び出しごとに監査します。lamp add のあと lamp mcp で、Claude Code、Cursor、あらゆるMCPエージェントへ。
学ぶ
実在するビジネス向けのソフトウェアをブラウザで作りながら学ぶ。コース、本物のサンドボックスで検証されるミッション、XPとレベル。インストール不要。
try.synsema.com ↗ブログから
Engine, program, modules, templates and assets in a single sealed executable, with a capability ceiling baked in. Nothing to install on the target — deploy it FROM scratch, or hand it to someone as a file.
A Synsema app is a website with automatic HTTPS, an installable phone app with native push, and a desktop app in its own window with your icon — from one server-rendered program and one API module. No native toolkit, no second codebase, no store required.
MCP is JSON-RPC. In Synsema the whole server is a dispatcher task and one POST route. Tools are tasks with real bodies, secrets stay sealed, and untrusted input runs under a capability ceiling.