AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Open source agentic programming environment for building, running, and inspecting AI workflows.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Self-Programming AI Assistant. Capture, automate, and refine all your workflows.
Python controls execution, validation and recovery; model calls provide decisions and generated content. Agentic functions, execution records and workflows make those operations inspectable and reusable. The programming guide explains the model and APIs.
Windows x86_64 or arm64 CLI/server, when the selected release includes its runtime assets:查看完整 README ↗
OpenProgram is an AI assistant and a Python framework in one. In the framework, Python owns the control flow, validation and recovery, and the model is called only where judgment or writing is needed. Every call lands in an execution graph you can inspect, branch and reuse. The assistant runs on the same runtime: a desktop and web workspace where chats, files, a terminal and a built-in browser sit side by side, and the agent can work in all of them.
self(...) is a model call.macOS and Linux:
curl -fsSL https://openprogram.io/install | sh
Windows x86_64 or arm64 CLI and server, when the selected release includes its runtime assets:
irm https://openprogram.io/install.ps1 | iex
The macOS desktop App ships as a signed, notarized DMG. Windows desktop installers are available when a signed win-x64.exe or win-arm64.exe is attached to the release. See installation for platform requirements, source installation and troubleshooting.
Start the setup wizard and the terminal chat:
openprogram
Open the browser interface at http://localhost:18100:
openprogram web
Check the configured provider with one reply:
openprogram --print "Introduce yourself in one sentence"
Run openprogram setup to change provider settings. Continue with getting started, model configuration or the documentation overview.
An agent is a Python class with ordinary methods. The docstring describes the call, the arguments carry the data, and self(...) asks the model. Branching, retries and checks stay in Python, so the parts that must happen always happen.
from openprogram import Agent
class SupportAgent(Agent):
def triage(self, ticket: str) -> str:
"""Classify the ticket, then draft a reply."""
kind = self(ticket, choices=["bug", "question"])
if kind == "bug":
logs = search_logs(ticket) # your own helper
return self(f"Reply using:\n{logs}")
return self("Draft a short reply.")
reply = SupportAgent().triage("The export button crashes the app.")
See writing agents and the Agent reference.
User turns, model calls and function calls are recorded as nodes in one graph. Each call reads a selection of earlier nodes rather than a growing private transcript. A sub-agent runs on its own branch, optionally in its own Git worktree, and only its result joins the main line. Branches also let you retry from any point or keep alternative histories. See context and collaboration.
An agent can write and revise the methods of its own Agent class with ordinary file tools. A watcher checks the files every two seconds and reloads eligible changes, so a new method is available as a tool from the next turn. See workflows.
decision.make(prompt, options) offers the model a fixed menu. Code checks the pick before anything runs, and an unknown option or bad argument goes back to the model to choose again. See choosing the next step.
One process-wide bus carries typed events from the agent loop, context, files, channels and memory. Subscribers observe the event types they ask for, and a plugin can subscribe to tool.before as a gate that allows or denies a tool call.
from openprogram.events import get_event_bus
unsubscribe = get_event_bus().subscribe(
lambda event: print(event.type, event.payload),
types={"context.compacted", "file.changed"},
)
# Call unsubscribe() when the subscriber is no longer needed.
See events, plugins and feature status.
| Desktop App and built-in browser | Split chats, files, terminals and web pages into panes. The agent reads and operates pages in the built-in browser while you watch. |
| Computer use | Let the agent operate desktop apps, built-in browser pages or a remote VM, step by step or as a task handed to a new agent. |
| Permissions | Approve, deny or deny with a note before a tool runs; the model reads your note and adjusts. |
| Memory | Stored evidence, retrieval and background writing across conversations. |
| Goals | Keep a long-running objective alive across ordinary conversations. |
| Agents | Save a model, instructions, capabilities and memory access as a reusable Agent. |
| Channels | Talk to your agents from Telegram, Discord, Slack and WeChat. |
| Models | Anthropic, OpenAI, Gemini, local servers and multiple accounts per provider. |
| Project | Purpose |
|---|---|
| GUI Agent Harness | Desktop automation through screenshots and actions. |
| Research Agent Harness | Literature review, experiments and paper preparation. |
| Scriptorium | Source-cited Markdown memory through MCP. |
Install programs with openprogram programs install <owner>/<repo>. See program installation.
LLM-as-Code: Agentic Programming for Agent Harness. KDD 2026 Workshop on Agentic Software Engineering (AgenticSE). arXiv:2606.15874.
@inproceedings{qi2026llmascode,
title = {LLM-as-Code: Agentic Programming for Agent Harness},
author = {Qi, Junjia and Fu, Zichuan and Gao, Jingtong and Zhang, Wenlin and Yan, Hanyu and Wu, Xian and Zhao, Xiangyu},
booktitle = {KDD 2026 Workshop on Agentic Software Engineering (AgenticSE)},
year = {2026},
eprint = {2606.15874},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2606.15874},
}
AGPL-3.0 © 2026 Fzkuji. See the license for use, modification, distribution and network-service obligations.
Thanks to contributors who provide code, reports, reproductions, tests, documentation and reviews.
| Skills, MCP and plugins | Extend what the agent knows and which tools it can call. |
| Interfaces | Desktop App, web UI, terminal UI, CLI and ACP. |