Reference
File locations
Where SI Fabrik keeps projects, history, logs, credentials and server data, on the Mac and on harnessd.
Mac app#
| Path | Contents |
|---|---|
~/Library/Application Support/Harness/ | Projects, lifetime stats and everything below |
…/history/<project-id>/runs.jsonl | Run history: one finished attempt per line, the last 200 (0600, folder 0700) |
…/history/<project-id>/samples.json | The token chart's last 24 hours |
…/history/<project-id>/guardrails.json | Daily spend, per-task cost, parked tasks, automatic pause |
…/links/<project>/<commit>/ | Read-only snapshots of linked projects' code |
…/link-runs/ | Per-task copies for linked services |
…/linked-tasks.json | Linked tasks and what waits on them (0600) |
…/cloudflare/bridge-token | The Cloudflare bridge token (0600) |
…/projects.json | Projects, including Allow agents to run directly on this Mac |
…/servers.json | Servers added in Remote mode (no secrets) |
…/egress/ | The egress proxy's policy and the chosen sandbox subnet |
…/egress/ca/ca.pem, bundle.pem | The egress proxy's CA, and the public roots plus that CA; mounted read-only into sandboxes at /etc/harness-ca/ |
…/egress/ca/ca-key.pem | The CA's private key (0600); never mounted into sandboxes |
~/Library/Logs/Harness/<project>.log | The project's structured log |
~/Library/Logs/Harness/<project>/<workspace key>/latest.log | The raw agent stream for a task |
Login Keychain, service com.redmantech.harness | Credentials, environment variables, project environments, test logins, server session tokens (remote_token_<id>) |
In a project's repository#
| Path | Contents |
|---|---|
WORKFLOW.md | The project's configuration and prompt |
.symphony/board.json | The built-in board (git-ignored by the wizard) |
refs/heads/symphony/<task-id> | Saved task branches |
refs/harness/saved/… | Work kept when a task branch diverged |
In a task's workspace#
| Path | Contents |
|---|---|
.harness/preview.log | The app's output, with preview: |
.harness/artifacts/ | Screenshots the agent saved |
.harness/services/<name>.log | Linked services' output |
.harness/ is kept out of commits. SI Fabrik never follows symbolic links when it reads screenshots and artifacts from .harness/ or writes service logs there, so an agent can't use a link to make it read or overwrite another file. Workspaces live under workspace.root, by default <temp>/symphony_workspaces/<project>.
harnessd#
| Path | Contents |
|---|---|
/etc/harness/harnessd.yaml | The configuration (read-only to the service) |
/etc/harness/secrets.env | Server-wide secrets (0600) |
/etc/harness/tls/ | Certificate and key (0600) |
data_dir/ (default /var/lib/harness, 0700) | Everything the server writes |
data_dir/users.json | Accounts (0600) |
data_dir/audit/audit.jsonl | The hash-chained audit log (0600) |
data_dir/secrets/remote.json | The overlay: values, test logins, settings and app-added projects set from the app (0600) |
data_dir/repos/<name>/ | Cloned project repositories |
data_dir/history/ | Run history, as on the Mac |
data_dir/logs/ | Project logs and raw agent streams |
data_dir/egress/ | The egress proxy's policy, subnet and CA (egress/ca/), as on the Mac |
The journal (journalctl -u harnessd) | Operational logs |