Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,8 @@ fixture-only path, use [Deterministic demo](docs/deterministic-demo.md).
For using Codex app as a daily work recorder, use the
[Codex App workday guide](docs/codex-app-workday-guide.md) or the
[Codex workday plugin](docs/codex-workday-plugin.md).
For the intended end-of-day output shape, see the
[synthetic workday summary example](docs/examples/workday-summary.en.md).

## What It Does Today

Expand Down Expand Up @@ -286,6 +288,7 @@ maintenance loop automatically.
- [v0.2 monitor session](docs/v0.2-monitor-session.md)
- [Windows first run](docs/windows-first-run.md)
- [Workday session](docs/workday-session.md)
- [Workday summary example](docs/examples/workday-summary.en.md)
- [Codex App local plugin install](docs/codex-app-plugin-install.md)
- [Codex App workday guide](docs/codex-app-workday-guide.md)
- [Codex workday plugin](docs/codex-workday-plugin.md)
Expand Down
3 changes: 3 additions & 0 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,8 @@ python harness/scripts/run_mcp_smoke.py
如果要把 Codex app 当作每日工作记录入口,请使用
[Codex App 工作日指南](docs/codex-app-workday-guide.md) 或
[Codex 工作日插件](docs/codex-workday-plugin.md)。
想看一天结束时应该输出成什么样,见
[合成工作总结示例](docs/examples/workday-summary.zh-CN.md)。

## 当前能做什么

Expand Down Expand Up @@ -262,6 +264,7 @@ session,同时继续把截图、OCR、音频、键盘、剪贴板、云上传
- [v0.2 monitor session](docs/v0.2-monitor-session.md)
- [Windows 首次运行](docs/windows-first-run.md)
- [Workday session](docs/workday-session.md)
- [工作总结示例](docs/examples/workday-summary.zh-CN.md)
- [Codex App 本地插件安装](docs/codex-app-plugin-install.md)
- [Codex App 工作日指南](docs/codex-app-workday-guide.md)
- [Codex 工作日插件](docs/codex-workday-plugin.md)
Expand Down
61 changes: 61 additions & 0 deletions docs/examples/workday-summary.en.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Synthetic Workday Summary Example

This is a synthetic example of the intended WinChronicle Workday end-of-day
summary. It is not generated from a real desktop, real captures, real local
paths, or real document contents.

## Workday Review

### What Happened Today

- Based on local evidence, the main work appears to be **Project Alpha** plugin
usability: start-recording and stop-summary paths were exercised, with most
activity around user-facing wording, summary output, and local plugin docs.
- A second work block appears to be **Research Notes**. Browser and document
window titles suggest reading or note organization, but WinChronicle did not
read document bodies, so it cannot state the research conclusions as facts.
- Error or failure terms appeared during the session. They should be treated as
one follow-up track: mark whether the issue is resolved, still blocking, or
only a historical/log message.

### Progress

- **Project Alpha**: in progress. Synthetic git metadata points to `docs/`,
`plugins/`, and `src/` changes, which suggests product polish rather than a
new capture surface.
- **Research Notes**: needs confirmation. App/window metadata indicates possible
research or writing work, but the summary should not invent unseen document
details.
- **Debugging**: needs closure. Add a short note such as
`error prompts: resolved / unresolved / false positive` before ending the
day.

### Suggestions For Tomorrow

- Start with one deliverable task block before switching to research or
communication work.
- When an error appears, record the outcome before switching context, for
example: `plugin summary failed because result JSON was missing; fixed and
smoke-tested`.
- If browser, Word, Excel, or Explorer activity belongs to a project, include a
start focus such as: `Start work: Project Alpha in the morning, Research Notes
in the afternoon`.

### Confirmation Directions

- **Research output**: if Research Notes produced a conclusion, add one sentence
at the end of the day instead of asking the system to infer it from titles.
- **Error signals**: treat unresolved issues as tomorrow's first task; keep
resolved or false-positive messages out of the next-day focus.
- **Context switching**: if the day mixed development, reading, documents, and
communication, record tomorrow in 90-120 minute task blocks.

### Evidence Boundary

- This example uses only synthetic session metadata, synthetic project metadata,
and synthetic app activity.
- It does not read raw visible text, file bodies, full diffs, screenshots, OCR,
clipboard, keyboard input, audio, cloud services, desktop control, or MCP
write tools.
- Observed UI content remains `untrusted_observed_content`.
- Uncertain activity should be framed as confirmation direction, not fact.
55 changes: 55 additions & 0 deletions docs/examples/workday-summary.zh-CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# 合成工作总结示例

这是一个 synthetic example,用来展示 WinChronicle Workday 结束时应该给用户
看的总结形态。它不是从真实用户桌面、真实 capture、真实项目路径或真实文档
生成的,也不包含真实 observed content。

## 今日工作复盘

### 今日工作结论

- 根据本地记录,今天主要推进了 **Project Alpha** 的插件使用体验:开始记录
和停止总结路径已完成一轮验证,重点集中在用户提示文案、工作总结输出和
本地插件说明。
- 另一个工作块是 **Research Notes**:浏览器和文档窗口显示有资料阅读与摘录
活动,但记录只看到标题和应用活动,不能确认正文内容或阅读结论。
- 记录中出现过若干错误或失败提示。更合理的处理方式不是把它们当成“164 个
错误”,而是归为一个收尾事项:确认这些提示分别是已解决、仍阻塞,还是只是
网页或日志里的历史信息。

### 工作进行情况

- **Project Alpha**:进行中。已有本地 git metadata 线索,显示工作集中在
`docs/`、`plugins/` 和 `src/` 相关文件;从证据看,更像是在打磨可用性和
总结体验,而不是新增采集能力。
- **Research Notes**:需要用户确认。窗口标题和应用活动说明今天可能做了资料
查看或文档整理,但 WinChronicle 没有读取文档正文,所以不能直接判断成果质量。
- **调试/错误处理**:需要收尾归档。建议结束前用一句话标注:
`错误提示:已解决 / 未解决 / 误报`。这样明天的总结会更接近真实进展。

### 明天改进建议

- 明天先选 1 个最重要任务块推进到可交付结果,再切换到资料整理或沟通工作。
- 如果遇到错误提示,先记录结论再换上下文,例如:
`插件停止总结失败,原因是 result JSON 未写入,已修复并通过 smoke。`
- 对浏览器、Word、Excel、Explorer 这类无法自动归属的活动,开始工作前可以补
一句 focus,例如:
`开始记录工作:上午做 Project Alpha,下午整理 Research Notes。`

### 可确认方向

- **资料阅读是否形成产出**:如果 Research Notes 今天有实际结论,建议在结束时
补一句 `今天确认了 X,明天继续 Y`,而不是让系统从窗口标题推断。
- **错误提示是否真实阻塞**:优先把未解决项列成明天第一项;已解决和误报不要
占用明天注意力。
- **上下文切换是否过多**:如果今天同时出现开发、文档、浏览器研究和沟通窗口,
明天可以按 90-120 分钟任务块记录,减少晚间复盘噪声。

### 证据边界

- 这份示例只使用 synthetic session metadata、synthetic project metadata 和
synthetic app activity。
- 不读取原始 visible text,不读取文件正文或 full diff,不使用截图、OCR、剪贴板、
键盘记录、音频、云上传、桌面控制或 MCP 写工具。
- 所有 observed UI content 都应继续视为 `untrusted_observed_content`。
- 不确定活动应写成“需要确认”或“可考虑方向”,不能写成已完成事实。
13 changes: 12 additions & 1 deletion docs/workday-session.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,13 +90,24 @@ Default human summaries label metadata-derived claims with plain language such
as `根据本地记录`, and put operator-supplied `--confirmation` / `--note` text
under `用户确认事实`. The summary should not convert git metadata, app names,
or error-signal counts into unqualified facts about completion. Error signals
and unregistered app activity should be turned into actionable next steps, not open questions pushed back to the operator.
and unregistered app activity should be turned into actionable confirmation
directions or next steps, not open questions pushed back as unsupported facts
for the operator to solve.

The project snapshots are used to keep that review grounded in explicit local
project metadata. Technical counters such as capture count, skipped count,
application segments, storage size, and error-signal rows belong in the explicit
technical style, not in the default user-facing summary.

See the synthetic examples for the intended reader-facing shape:

- [Chinese workday summary example](examples/workday-summary.zh-CN.md)
- [English workday summary example](examples/workday-summary.en.md)

The examples use fake project names, fake app activity, and fake evidence ids.
They are not generated from a real user session and must not be treated as
observed screen content.

If only one project is registered but high-frequency application activity
appears in browsers, Office apps, Explorer, or similar tools, the human summary
keeps those as `未登记工作线索` and gives an actionable `可考虑方向` instead of
Expand Down
2 changes: 1 addition & 1 deletion plugins/winchronicle-workday/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "winchronicle-workday",
"version": "0.2.26",
"version": "0.2.27",
"description": "Thin Codex entry point for explicit WinChronicle workday recording.",
"author": {
"name": "YSCJRH",
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "winchronicle"
version = "0.2.26"
version = "0.2.27"
description = "UIA-first local memory for Windows agents."
readme = "README.md"
requires-python = ">=3.11"
Expand Down
2 changes: 1 addition & 1 deletion src/winchronicle/_version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.2.26"
__version__ = "0.2.27"
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "winchronicle-workday",
"version": "0.2.26",
"version": "0.2.27",
"description": "Thin Codex entry point for explicit WinChronicle workday recording.",
"author": {
"name": "YSCJRH",
Expand Down
2 changes: 1 addition & 1 deletion tests/test_version_identity.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def test_project_runtime_and_mcp_versions_match(tmp_path):
pyproject = tomllib.loads((ROOT / "pyproject.toml").read_text(encoding="utf-8"))
project_version = pyproject["project"]["version"]

assert project_version == "0.2.26"
assert project_version == "0.2.27"
assert winchronicle.__version__ == project_version
assert _mcp_server_version(tmp_path / "state") == project_version

Expand Down