80 lines
2.8 KiB
Markdown
80 lines
2.8 KiB
Markdown
# Coworker
|
|
|
|
Coworker is a Windows-first local AI coding app. It is designed like a focused desktop coding assistant: open a project, connect a local model, talk to the agent, inspect files, review diffs, and keep useful context in Brain.
|
|
|
|
## Features
|
|
|
|
- Codex-style desktop workflow for coding sessions.
|
|
- Local model provider setup for Ollama, LM Studio, and custom OpenAI-compatible endpoints.
|
|
- Brain with persistent memories and reusable skills.
|
|
- Workspace file preview with path confinement.
|
|
- Optional Web/PWA access for iPhone and iPad, disabled by default and protected by pairing codes.
|
|
- Windows installer produced by Gitea Actions on Ubuntu runners.
|
|
|
|
## Development
|
|
|
|
Project setup, dependency installation, builds, tests, audits, packaging, and releases run in Gitea Actions. Do not run heavy project commands on the user's local machine.
|
|
|
|
Runner commands:
|
|
|
|
```bash
|
|
npm install
|
|
npm run lint
|
|
npm run test
|
|
npm run build
|
|
npm run package:win
|
|
```
|
|
|
|
Lightweight local validation:
|
|
|
|
```bash
|
|
git diff --check
|
|
```
|
|
|
|
## Windows Installer
|
|
|
|
Download the current Windows installer from the latest successful Gitea build:
|
|
|
|
- [Build artifacts: coworker-windows-installer](https://git.wilkensxl.de/Code-Inc/Coworker/actions/runs/22)
|
|
|
|
The build workflow also publishes the installer to the Gitea package registry when `secrets.GITEA_TOKEN` has package write access for `Code-Inc`:
|
|
|
|
- [Coworker-Setup-0.1.0.exe](https://git.wilkensxl.de/api/packages/Code-Inc/generic/coworker-windows-installer/0.1.0/Coworker-Setup-0.1.0.exe)
|
|
- [SHA256SUMS.txt](https://git.wilkensxl.de/api/packages/Code-Inc/generic/coworker-windows-installer/0.1.0/SHA256SUMS.txt)
|
|
|
|
```text
|
|
release/Coworker-Setup-<version>.exe
|
|
release/SHA256SUMS.txt
|
|
```
|
|
|
|
The installer is unsigned until a Windows code-signing certificate is configured. The app can check Gitea releases for updates, but silent auto-update is intentionally deferred until signing exists.
|
|
|
|
## Web/PWA Access
|
|
|
|
Web access is disabled by default. Enable it in Settings, choose localhost or LAN/Tailscale binding, then create a pairing code. Open the displayed URL on iPhone or iPad and add Coworker to the Home Screen.
|
|
|
|
Security defaults:
|
|
|
|
- pairing is required,
|
|
- device tokens are stored hashed,
|
|
- paired devices can be revoked in a future settings panel,
|
|
- workspace access stays inside selected project folders.
|
|
|
|
## Architecture
|
|
|
|
```text
|
|
apps/desktop Electron main process, preload bridge, React renderer
|
|
packages/core Agent, Brain, provider, pairing, and shared types
|
|
docs release, security, and project handoff documents
|
|
.gitea/workflows Gitea CI, installer, security, and release automation
|
|
```
|
|
|
|
## Release
|
|
|
|
1. Ensure the Gitea build workflow succeeds.
|
|
2. Update `CHANGELOG.md`.
|
|
3. Create a `v*` tag.
|
|
4. Let the release workflow upload the installer and checksum to Gitea.
|
|
|
|
Do not create a release from a local build.
|