An open API service indexing awesome lists of open source software.

https://github.com/dakehero/worktracce


https://github.com/dakehero/worktracce

Last synced: 24 days ago
JSON representation

Awesome Lists containing this project

README

          

# worktrace

[中文](README.zh-CN.md)

`worktrace` is a local-first personal work tracing tool. The goal is to capture work context on Win11, macOS, and Linux desktops, build an activity timeline, and generate daily work reports.

The project uses .NET and currently includes:

- Core storage layer
- Capture abstraction with dry-run and Windows active-window capture
- Agent worker loop
- CLI capture options
- Local daily report generation

## Quick Start

```powershell
dotnet run --project src\Worktrace.Cli -- init
dotnet run --project src\Worktrace.Cli -- doctor
dotnet run --project src\Worktrace.Cli -- capture-once --backend dry-run --target active-window
dotnet run --project src\Worktrace.Cli -- summarize-day --dry-run
dotnet run --project src\Worktrace.Cli -- run --backend dry-run --target active-window
```

`WORKTRACE_CAPTURE_BACKEND` can be set to `dry-run` or `platform`. `platform` attempts native active-window capture on implemented operating systems. Windows captures one active-window PNG when permissions and desktop state allow it. On Linux the intended future backend is `xdg-desktop-portal`; GNOME is a validation environment, not a product boundary.

Windows platform smoke command:

```powershell
dotnet run --project src\Worktrace.Cli -f net10.0-windows10.0.19041.0 -- capture-once --backend platform --target active-window
```

## Build And Test

```powershell
dotnet build Worktrace.slnx
dotnet run --project tests\Worktrace.Tests
```

## Data Directory

The default data directory is `~/.worktrace`:

- `screenshots/`: screenshot files
- `data/screenshots.jsonl`: screenshot metadata
- `data/observations.jsonl`: activity observations
- `data/reports.jsonl`: report index
- `reports/`: daily Markdown reports

## Status

`capture-once --backend dry-run` does not read the screen. It validates the capture abstraction, storage, and report flow. Real platform capture backends will be added incrementally:

- Windows: `Windows.Graphics.Capture` active-window PNG capture
- macOS: `ScreenCaptureKit`
- Linux: `xdg-desktop-portal` + PipeWire

See [AGENTS.md](AGENTS.md) for engineering direction and constraints.