A tiny agent harness
Translation pending
Developer toolsPython · TypeScriptGitHub @MadaraUchiha-314OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
An opinionated, production-grade agent harness for customer-facing agentic workflows:
A2A 1.0 in and out, MCP tools, Agent Skills and Agent Plugins, one Temporal workflow per
task, hooks around every operation, and a TUI and a web renderer. It is being built in
the stacked pull requests of issue #3;
the spec chain lives under docs/specs/issue-3/.Read the full README ↗tiny-harness runs an AI agent that can hold a conversation, call tools and survive a crash. You can use it in two ways:
Full documentation: madarauchiha-314.github.io/tiny-harness
You need Python 3.14 and an OpenAI API key.
pip install tiny_harness
export OPENAI_API_KEY=sk-...
tiny-harness
The TUI opens. Type a message and press Enter.
On the first run, tiny-harness creates its configuration file at
~/.tiny-harness/config.toml. It also downloads the Temporal server one time. Temporal
keeps your tasks safe when the program stops.
No OpenAI key? Use a local model with Ollama. See Models.
Read more: CLI guide.
pip install tiny_harness
export OPENAI_API_KEY=sk-...
Write a configuration file, config.toml:
[temporal]
mode = "embedded" # tiny-harness starts Temporal for you
[openai]
model = "gpt-6.1-sol"
[server]
base_url = "http://127.0.0.1:8080"
Start the agent from your code:
import asyncio
from pathlib import Path
from tiny_harness.config import Settings
from tiny_harness.service import running_harness
async def main() -> None:
settings = Settings.load(Path("config.toml")) # secrets come from the environment
async with running_harness(settings) as harness:
print(f"Agent ready at {harness.base_url}")
await harness.wait() # serve until the process stops
asyncio.run(main())
Any A2A client can now talk to the agent at harness.base_url.
Read more: SDK guide.
| I want to … | Read |
|---|---|
| Chat with an agent in my terminal | CLI guide |
| Run the agent in my Python application | SDK guide |
| Add one or more agents to my Starlette or FastAPI app | Mount agents on your app |
| Send images and talk to the agent by voice | Images and voice |
| Change a setting | Configuration |
| Put the agent in production | Deploy |
| Work on tiny-harness itself | Developer guide |
Apache-2.0. See LICENSE.