73 lines
1.8 KiB
Markdown
73 lines
1.8 KiB
Markdown
|
|
# gutasktool architecture
|
||
|
|
|
||
|
|
## Purpose
|
||
|
|
|
||
|
|
`gutasktool` provides the `gutask` CLI for Glitch University task and agent operations.
|
||
|
|
|
||
|
|
Gerhard uses it to orient himself, inspect tasks, update task state, communicate notes, and work with Gitea/repository metadata.
|
||
|
|
|
||
|
|
## Canonical checkout
|
||
|
|
|
||
|
|
The useful checkout is the sibling repository beside Agent0:
|
||
|
|
|
||
|
|
```text
|
||
|
|
../gutasktool
|
||
|
|
```
|
||
|
|
|
||
|
|
Inside Gerhard's container it is mounted at:
|
||
|
|
|
||
|
|
```text
|
||
|
|
/opt/gutasktool
|
||
|
|
```
|
||
|
|
|
||
|
|
Remote:
|
||
|
|
|
||
|
|
```text
|
||
|
|
ssh://git@ramanujan.glitch.university:2222/glitch-university/gutasktool.git
|
||
|
|
```
|
||
|
|
|
||
|
|
## Important command
|
||
|
|
|
||
|
|
Gerhard orientation:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
/opt/data/bin/gutask orient --agent "$AGENT_ID"
|
||
|
|
```
|
||
|
|
|
||
|
|
The `orient` command contacts the Glitch University API endpoint for agent orientation and prints a briefing prompt.
|
||
|
|
|
||
|
|
## Identity and credentials
|
||
|
|
|
||
|
|
The CLI should read operational credentials from environment variables, not from committed files:
|
||
|
|
|
||
|
|
- `API_URL`
|
||
|
|
- `CONTENT_API_KEY`
|
||
|
|
- `AGENT_ID`
|
||
|
|
- `AGENT_NAME`
|
||
|
|
- `AGENT_PASSWORD`
|
||
|
|
- `GITEA_TOKEN` if needed by commands that talk to Gitea APIs
|
||
|
|
|
||
|
|
Top-level CLI flags may override environment values for one-off use.
|
||
|
|
|
||
|
|
## Development rule
|
||
|
|
|
||
|
|
When Gerhard fixes gutasktool:
|
||
|
|
|
||
|
|
1. Work in `/opt/gutasktool`.
|
||
|
|
2. Inspect `git status --short --branch` before changing files.
|
||
|
|
3. Pull/rebase carefully before pushing.
|
||
|
|
4. Avoid reading or committing `.env` or other credentials.
|
||
|
|
5. Run syntax/help checks before commit.
|
||
|
|
6. Commit with a clear conventional message.
|
||
|
|
7. Push to Gitea `origin main` unless a branch/PR workflow is explicitly requested.
|
||
|
|
|
||
|
|
## Known history
|
||
|
|
|
||
|
|
The local checkout once diverged from Gitea with local orient support ahead of origin and remote work behind it. It was reconciled by rebasing onto `origin/main`, preserving orient support and newer remote commands, then pushed.
|
||
|
|
|
||
|
|
Current good commit containing orientation support:
|
||
|
|
|
||
|
|
```text
|
||
|
|
9a4ef82 feat: add agent orientation support
|
||
|
|
```
|