AA

aziz0x00/agent.sh

Developer tools
46 stars 품질 40 트렌드 40

minimalist/toy terminal agent harness written in bash

개요

tiny terminal agent, written with simplicity and composability in mind. https://github.com/user-attachments/assets/f53c96da-043c-45af-9b12-0eb7211fef16 - --raw plain output (no markdown rendering), exits after one completion — good for piping: cmd1 | chat --raw summarize > out.md - --free skip tool permission prompts Clone the repo and alias agent.sh to a command name of your preference Put your provider API keys (if any) in .env, see .env.example Pick a provider from providers/ with the PROVIDER env var (default: opencode-go) - /state, /s opens the state which is the json sent to the api in an editor, to inspect it or edit it - /continue, /c sends the current state to the API directly - /logs, /l displays logs, which are either outputs of executed tools or reasoning tokens - /model, /m change used model All skills must be placed in ~/.agents/skills/ (customizable via the SKILL_PATH env var) in the standard SKILL.md format, see ./tools/Skill.sh.

README

🪄 agent.sh

tiny terminal agent, written with simplicity and composability in mind.

https://github.com/user-attachments/assets/f53c96da-043c-45af-9b12-0eb7211fef16

Usage

cmd1 | chat what should i look for in this
chat "what's a cyclic endomorphism"
chat

Flags:

  • --raw plain output (no markdown rendering), exits after one completion — good for piping: cmd1 | chat --raw summarize > out.md
  • --free skip tool permission prompts

Install

Make sure to have uv, jq, rg, bat, gum and html2text installed

Clone the repo and alias agent.sh to a command name of your preference

alias j='/path/to/agent.sh'

Put your provider API keys (if any) in .env, see .env.example

Pick a provider from providers/ with the PROVIDER env var (default: opencode-go)

PROVIDER=ollama j

Current Capabilities

Tool Description
Glob Find files by pattern
Grep Search inside files
Read Read file
Edit Modify file
Write Create or append files
Bash Run shell commands
WebSearch Search the web via Exa AI
WebFetch Fetch URLs with curl and html2text
Skill Use specialized skills
Question Ask user for input/choices

Slash Commands

  • /state, /s opens the state which is the json sent to the api in an editor, to inspect it or edit it
  • /continue, /c sends the current state to the API directly
  • /logs, /l displays logs, which are either outputs of executed tools or reasoning tokens
  • /model, /m change used model

Add Capabilities

Skills

All skills must be placed in ~/.agents/skills/ (customizable via the SKILL_PATH env var) in the standard SKILL.md format, see ./tools/Skill.sh.

Tools

Tools are as simple as Bash functions. You can check tools/ directory for reference, or just ask agent.sh to create it for you!

Contributions

All contributions are welcome !

Credits

Thanks to opencode - borrowed a lot of cool ideas from it!

View this README on GitHub

추천 도구

다른 키워드를 입력하거나 필터를 제거해 보세요.

설치

npx skillfish add aziz0x00/agent.sh