Skip to content

Commit 7b1a331

Browse files
committed
initial commit
0 parents  commit 7b1a331

24 files changed

Lines changed: 1619 additions & 0 deletions

.github/workflows/deploy.yaml

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: Deploy to GitHub Pages
2+
3+
on:
4+
push:
5+
branches: [main]
6+
workflow_dispatch:
7+
8+
permissions:
9+
contents: read
10+
pages: write
11+
id-token: write
12+
13+
concurrency:
14+
group: pages
15+
cancel-in-progress: false
16+
17+
jobs:
18+
build-and-deploy:
19+
runs-on: ubuntu-latest
20+
environment:
21+
name: github-pages
22+
url: ${{ steps.deployment.outputs.page_url }}
23+
24+
steps:
25+
- name: Checkout
26+
uses: actions/checkout@v4
27+
28+
- name: Setup Node
29+
uses: actions/setup-node@v4
30+
with:
31+
node-version: 18.x
32+
33+
- name: Install MyST
34+
run: npm install -g mystmd
35+
36+
- name: Build MyST docs
37+
run: |
38+
cd docs
39+
myst build --html
40+
41+
- name: Assemble site
42+
run: |
43+
mkdir -p _site
44+
# Landing page from site/
45+
cp index.html _site/
46+
cp icon.ico _site/
47+
cp crow-icon-white.ico _site/
48+
cp crow-icon-white.svg _site/
49+
cp crow-logo.svg _site/
50+
# MyST docs at /docs
51+
cp -r docs/_build/html _site/docs
52+
53+
- name: Setup Pages
54+
uses: actions/configure-pages@v4
55+
56+
- name: Upload artifact
57+
uses: actions/upload-pages-artifact@v3
58+
with:
59+
path: _site
60+
61+
- name: Deploy to GitHub Pages
62+
id: deployment
63+
uses: actions/deploy-pages@v4

CNAME

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
www.crow-ai.dev
2+
crow-ai.dev

crow-icon-white.ico

1.12 KB
Binary file not shown.

crow-icon-white.svg

Lines changed: 52 additions & 0 deletions
Loading

crow-logo.svg

Lines changed: 19 additions & 0 deletions
Loading
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
title: Installation
3+
---
4+
5+
# Installation
6+
7+
## Requirements
8+
9+
- Python 3.11+
10+
- [uv](https://docs.astral.sh/uv/) package manager
11+
12+
## Install with uv
13+
14+
```bash
15+
uv tool install crow-cli --python 3.14
16+
```
17+
18+
## Verify Installation
19+
20+
```bash
21+
crow-cli --version
22+
```
23+
24+
## Development Install
25+
26+
For contributing or development:
27+
28+
```bash
29+
git clone https://github.com/crow-ai/crow-cli
30+
cd crow-cli
31+
uv sync
32+
```

docs/getting-started/quickstart.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
title: Quick Start
3+
---
4+
5+
# Quick Start
6+
7+
## Create an Agent
8+
9+
```python
10+
from crow_cli import Agent
11+
12+
agent = Agent(
13+
model="gpt-4",
14+
system_prompt="You are a helpful assistant."
15+
)
16+
17+
response = await agent.run("Hello!")
18+
print(response)
19+
```
20+
21+
## Add Tools
22+
23+
```python
24+
from crow_cli import Agent
25+
from fastmcp import FastMCP
26+
27+
mcp = FastMCP("my-tools")
28+
29+
@mcp.tool()
30+
def get_weather(city: str) -> str:
31+
"""Get weather for a city."""
32+
return f"Weather in {city}: Sunny, 72°F"
33+
34+
agent = Agent(
35+
model="gpt-4",
36+
mcp_servers=[mcp]
37+
)
38+
39+
response = await agent.run("What's the weather in Tokyo?")
40+
```
41+
42+
## Session Persistence
43+
44+
```python
45+
from crow_cli import Agent
46+
47+
agent = Agent(
48+
model="gpt-4",
49+
session_id="my-session" # Persists to SQLite
50+
)
51+
52+
# First message
53+
await agent.run("My name is Alice")
54+
55+
# Later... remembers context
56+
await agent.run("What's my name?") # "Your name is Alice"
57+
```
58+
59+
## Next Steps
60+
61+
- [](../guides/configuration.md) - Configure your agent
62+
- [](../guides/tools.md) - Add more tools
63+
- [](../api/agent.md) - Full API reference

docs/index.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
title: crow-cli Documentation
3+
---
4+
5+
# crow-cli Documentation
6+
7+
Minimal Native ACP Agent Framework. No frameworks, just OpenAI SDK, FastMCP, and SQLAlchemy.
8+
9+
```{toctree}
10+
:maxdepth: 2
11+
:caption: Getting Started
12+
13+
getting-started/installation
14+
getting-started/quickstart
15+
```
16+
17+
```{toctree}
18+
:maxdepth: 2
19+
:caption: Guides
20+
21+
guides/configuration
22+
guides/tools
23+
guides/sessions
24+
```
25+
26+
```{toctree}
27+
:maxdepth: 2
28+
:caption: Reference
29+
30+
api/agent
31+
api/tools
32+
api/sessions
33+
```
34+
35+
---
36+
37+
## Quick Install
38+
39+
```bash
40+
uv tool install crow-cli --python 3.14
41+
```
42+
43+
## Features
44+
45+
- **Native ACP Agent**: No framework lock-in
46+
- **FastMCP Integration**: Tool calling via MCP
47+
- **Session Persistence**: SQLite-backed sessions
48+
- **Streaming**: Real-time response streaming
49+
50+
## Why crow-cli?
51+
52+
Most agent frameworks are heavy abstractions. crow-cli is a reference implementation that shows you exactly how things work:
53+
54+
- OpenAI SDK for LLM calls
55+
- FastMCP for tool integration
56+
- SQLAlchemy for persistence
57+
58+
No magic, just code you can understand and modify.

docs/myst.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
version: 1
2+
project:
3+
title: crow-cli
4+
description: Minimal Native ACP Agent Framework
5+
github: https://github.com/crow-ai/crow-cli
6+
license: MIT
7+
8+
site:
9+
title: crow-cli Documentation
10+
template: book-theme
11+
options:
12+
favicon: ../icon.ico
13+
logo: ../crow-logo.svg
14+
logo_dark: ../crow-logo.svg
15+
logo_text: crow-cli
16+
logo_url: /
17+
style: styles/purple.css
18+
hide_outline: false
19+
hide_search: false

0 commit comments

Comments
 (0)