尚未偵測到更新。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.