尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Fibona Agent is a minimal, general-purpose, self-improving agent that writes its own code as it runs.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Fibona Agent is a minimal, general-purpose, self-improving agent that writes its own code as it runs.
It starts with only a tiny, general-purpose core, which we define as its "self." From this core, it can build its entire system step by step, becoming whatever it needs to be to get the task done. When something goes wrong, it can repair itself and return to a working state autonomously.
Project Page · Video Intro · Tech Report · Online Demo
Try the online demo in your browser.
iOS source and build instructions
Fibona Agent in Chrome: extension source and installation
Requires Python 3.12+ and uv.
Create a .env file in the project root:
FIBONA_API_KEY=your-api-key
FIBONA_BASE_URL=https://api.openai.com/v1
FIBONA_MODEL=gpt-6-astra
Set FIBONA_MODEL to your model ID; it defaults to gpt-6-astra.
Set FIBONA_BASE_URL to use an OpenAI-compatible gateway.
call_me uses the OpenAI Responses API in stateless mode:
it sends the full context each round with store=False. To continue across calls, include the earlier
input and returned r.output in the next input; previous_response_id is not supported.
To receive encrypted reasoning for replay, pass include=["reasoning.encrypted_content"].
The complete official Responses API reference is available offline in the REPL as
openai_responses_api_docs (page name → Markdown), including methods/create, streaming-events,
and websocket-events. The reference also documents stateful features that call_me does not support.
Choose a startup mode and run it from the project root:
Start the terminal UI from the project root:
uv run --env-file .env fibona.py --boot-mode terminal
See the terminal bootstrap README for its design and controls.
Or start in the minimal mode and let the agent build its own chat TUI:
uv run --env-file .env fibona.py --boot-mode minimal \
"Build and launch a premium chat TUI in this terminal.
I want to use it to chat with you.
The TUI should feature refined dark colors, generous spacing, elegant rendering,
clear activity status, and multiline input. Press Enter to send messages.
Keep me updated as you build it."
Omit the task to enter it interactively.
To define your own startup behavior, write your bootstrap cell in ./your_custom_bootstrap.py, then run:
uv run --env-file .env fibona.py --boot-mode ./your_custom_bootstrap.py
Use --reasoning-effort high to set the default for call_me, and
--lowest-reasoning-effort medium to set its minimum. Both default to medium and accept
none, minimal, low, medium, high, xhigh, or max. Requests below the minimum
are raised to it, including the default. The selected model must support the chosen effort.
Each run automatically records cells and every model request, response, or error (including intermediate tool calls) in logs/<timestamp>-<run-id>.jsonl.
From another uv project, add a local checkout:
uv add /path/to/fibona-agent
Core executes the Python source supplied to Agent.run as the bootstrap cell in a persistent session.
Cells share variables and call call_me when they need the model to choose the next cell.
Configure the client, model, working directory and input/output in your application:
import os
import sys
from openai import OpenAI
from core.agent import Agent, Mind, INSTRUCTIONS
from core.env import IPythonEnv
bootstrap_cell = """
task = input("Your task: ")
call_me(input=task)
"""
with OpenAI(
api_key=os.environ["FIBONA_API_KEY"],
base_url=os.getenv("FIBONA_BASE_URL", "https://api.openai.com/v1"),
) as client:
mind = Mind(client=client, model=os.getenv("FIBONA_MODEL", "gpt-6-astra"), instructions=INSTRUCTIONS)
env = IPythonEnv(stdout=sys.stdout, stderr=sys.stderr, read_input=input)
Agent(mind, cwd=".").run(bootstrap_cell, env=env)
Enable Ruff checks before each commit:
uv run pre-commit install
The hooks run Ruff lint and format checks on staged files. Errors block the commit.
To check all tracked files manually:
uv run pre-commit run --all-files
If you use Fibona Agent in your research, please cite it as follows:
@misc{fibonaagent2026,
title = {{Fibona Agent: Self-Improving Agent Writing Itself From Scratch}},
author = {{FibonaAI Team}},
year = {2026},
howpublished = {GitHub repository},
url = {https://github.com/FibonaAI/fibona-agent}
}
This project is licensed under the MIT License.