Metadata-Version: 2.4
Name: aichs
Version: 0.3.0
Summary: A minimal visual harness for agentic coding.
Author: Nadav Yo
License-Expression: MIT
Project-URL: Homepage, https://github.com/nadav-yo/aichs
Project-URL: Repository, https://github.com/nadav-yo/aichs
Project-URL: Documentation, https://github.com/nadav-yo/aichs/tree/main/docs
Keywords: ai,agent,coding,desktop,pyqt
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Win32 (MS Windows)
Classifier: Environment :: X11 Applications :: Qt
Classifier: Environment :: MacOS X
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Software Development
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: PyQt6==6.11.0
Requires-Dist: anthropic==0.104.1
Requires-Dist: openai==2.38.0
Requires-Dist: markdown==3.10.2
Requires-Dist: pygments==2.20.0
Dynamic: license-file

# aichs

**aichs is a minimal visual harness for agentic coding.**
Adapt it to your workflows, not the other way around.

Open a repository, chat with a model, and let the agent work with your code
through approved tools, git context, file references, skills, and extensions.

![Python 3.11+](https://img.shields.io/badge/python-3.11%2B-blue)
![Tests](https://github.com/nadav-yo/aichs/actions/workflows/tests.yml/badge.svg)

## Status

aichs is early software. It is intended for developers who are comfortable
running a local app that can read a workspace and, with approval, edit files or
run shell commands.

## Install From PyPI

Install the published command with `pipx`:

```bash
pipx install aichs
```

Start it from a repository:

```bash
cd /path/to/your/repo
aichs
```

Or pass the workspace explicitly:

```bash
aichs /path/to/your/repo
```

## Run

By default, `aichs` honors the directory it was started from. Use
`aichs --last-workspace` only when you want to reopen the previously saved
workspace.

Conversation history is stored in user data, not in your repository. Each
workspace gets a stable entry in `~/.aichs/workspaces.json` and its chats are
saved under `~/.aichs/<workspace_id>/conversations/`.

API keys can be configured in **Settings -> Models** or through environment
variables. Requires Python 3.11+.

## What It Does

Open a workspace folder, pick a model, and work in one window:

- **Agentic coding**: ask the agent to inspect files, explain code, search the repo, make edits, and run approved shell commands
- **Approval-gated tools**: read, edit, search, git context, shell commands, and extension tools with workspace-scoped paths
- **Coding workspace**: file tree, syntax-highlighted tabs, git status, diffs, file references, and conversation history
- **Context management**: usage view, auto-compaction, compacted summaries, and decision memory for long sessions
- **Customization**: slash-command skills, command palette, project/user extensions, custom tools, hooks, badges, and panels
- **Conversation flow**: streaming Markdown, vision-capable models, file mentions, edit/resend, queued messages, pinned chats, search, and export

Shell commands and extensions run as the current user; only enable extensions
you trust.

## Contributing

Contributor setup, source installs, tests, packaging, and release notes live in
[CONTRIBUTING.md](CONTRIBUTING.md).

## Documentation

| Topic | |
|---|---|
| Configuration | [docs/configuration.md](docs/configuration.md) |
| Custom model providers | [docs/custom-models.md](docs/custom-models.md) |
| Extensions and custom tools | [docs/extensions.md](docs/extensions.md) |
| Slash-command skills | [docs/skills.md](docs/skills.md) |
| Compaction and decision memory | [docs/compact.md](docs/compact.md) |

## FAQ

### What does aichs stand for?

**AI Choding Harness Studio.** It is also a play on Hebrew "ichs" (`איכס`),
from Arabic `إخسا`, roughly "yuck" or "ew." The name is a little cursed on
purpose.

### Why use aichs when Cursor, Claude Code, Codex, and other agent tools exist?

You may not need it. Those tools are wonderful. aichs is for when you want a
small, local, hackable agentic coding workspace that is shaped around your own
habits.

### Is aichs trying to replace my IDE?

No. It is a companion workbench: one window for the agent conversation, repo
context, files, diffs, approvals, custom prompts, and extension tools.

### Can I contribute something?

Very much. Small fixes, weird ideas, extensions, docs, and sharp opinions are
all welcome. See [CONTRIBUTING.md](CONTRIBUTING.md).

### Does the S feel forced?

Yes. It is.

## License

MIT License. See [LICENSE](LICENSE).
