Task History and the Journal
Pro Only
The History tab of the Tasks tool is a record of the completed tasks and commits in your project, grouped by goal. Each goal's section shows its number of tasks and the total time spent, and lists its entries with the most recent first:
- Task entries -- When the task completed, how long it ran, the tokens it used, the outcome of its review, and the text it was sent.
- Commit entries -- Commits made through review, with the revision, date, and commit message.
- Follow-up prompts -- Prompts sent while a task was running, such as a clarification.
A task moves here when it is completed. A task deleted before it completes is not recorded. The triangle at the left of a task entry's heading collapses the entry to its heading and report summary, and expands it again. The Filter field at the top of the tab shows only the records whose task text, summaries, goal, or task ID contain what you type.
A task with a report offers Revise..., which works as on the Review tab, on top of what the task committed; see Reviewing Tasks. A task that the Tasks Manager retired without running it, or merged into another task, offers Restore to Plan, which puts it back on the Plan tab as a Draft.
When other developers share their plans, the completed tasks of those chosen with the filter icon on the Plan tab are listed at the end, below a divider.
History Settings... in the tool's options menu turns Record History on or off, and sets how many days of records are kept and how many records per developer. Its Clear All Now button removes all History at once, and a checkbox sets whether these also apply to other developers' History. When the plan is shared, these settings are shared too.
The Journal
The Journal is a short, permanent record of the project's work, as a list of its phases. A phase is a broad step of the work, such as a new request, a new part of the code, a validation pass, or a run of bug fixes. Each phase is one line, with the time it began and a short label, under a heading for its day. The Journal is read in an export of History, described below.
Wing records the work in sittings. A sitting is a stretch of work in one working copy, which ends once nothing has happened for 20 minutes. When a sitting ends, Wing saves what you asked for, which tasks started and finished, what was committed, tasks done on peers, and trouble such as failed tasks.
The Tasks Manager names each sitting's phases from these facts, and Wing gives each phase the time of the event where it began. A phase may run across several sittings. A sitting that ended while the Manager was off is named when the Manager next starts. Until then, the sitting shows one phase for each prompt you typed, labelled with its first words, or one phase naming its goals.
A task sent to another machine is counted in the Journal of the machine that sent it, in the sitting where its returned work was applied or refused. The other machine's Tasks Manager may send a sentence on what the task did, for this machine's Manager to use when naming phases.
History Settings... never removes a saved sitting. Each user and working copy has one Journal file, which by default is kept in the private .TASKS/journal/ directory, not under version control. Checking Share Journal in the tool's options menu has each commit Wing makes copy the file into TASKS/journal/ and commit it, so other developers' exports can include your phases. Unchecking it has the next commit remove the copies of all your working copies' Journals. This choice applies to all your working copies and is independent of Share Plan. See Sharing Tasks via Version Control for details.
Exporting History
Export History... in the tool's options menu writes the project's History to one document: the Journal, followed by the details of each task. It is available whether Record History is on or off. Its dialog stays open beside the IDE until you export or cancel. The document contains:
- A header naming the project, the range, and whose work is included
- The Journal phases of the sittings that overlap the chosen tasks, grouped by day, with the user and working copy named when more than one appears
- Totals of tasks, task time, elapsed time, tokens, questions, judgement calls, findings, commits, and Tasks Manager decisions
- A Timeline of when each task started, asked questions, was answered, finished, and was committed
- A Tasks section for each task, oldest first: its origin, goal, run times, outcome, commits, token usage, prompt, questions and answers, judgement calls, findings, typed follow-ups, the agent's response, and one diff for each file it changed
- The Tasks Manager's questions to you and its decisions
- Notable events: failed or blocked reports, checks that found issues and the tasks they filed, reruns, unanswered questions, your typed follow-ups, and Tasks Manager decisions you reverted
- Tasks not run in the range, and Notes on the data, such as History removed by History Settings... before the range began
The dialog's options are:
Range -- All goals, the default, or only the tasks of the goal selected with Goal. When records are checked in the History tab's select mode, Selected History records exports only those, and is chosen by default. Checking Only from limits any of these to the tasks that ran between the two dates given.
Users -- A filter icon, or the text beside it, whose menu chooses whose work is exported: Only Self (the default), All Users, or you and the users checked in its list. Your own work comes from every working copy whose plan or Journal Wing can read here, which for other working copies means those you share. Other users' work is their shared plans and Journals.
Format -- Markdown (the default), HTML, or Text. The HTML file is self-contained, with each task and its diffs collapsible.
Include -- Diffs of changed files includes the changes made to files; unchecked, only their names are kept. Typed follow-ups and relayed messages includes what you typed to tasks as they ran and the messages the Tasks Manager sent them; answers to questions are kept either way. Token usage includes token counts, models, and tool call counts. All are checked by default.
Scrub -- Replaces what is found with a placeholder. Secrets covers API keys, tokens, passwords, private keys, and credentials in URLs. It is checked for every export, and unchecking it shows a warning. Emails, Names, Paths, Hosts (host names and IP addresses), Peer names, and Other URLs are unchecked by default. Peer names are replaced by peer 1, peer 2, and so on, so peers can still be told apart. Dates only removes the times of day. Also scrub takes a comma-separated list of other words to remove, such as codenames or customer names. Scrubbing cannot find text quoted from other sources, such as customer data in a prompt; to leave it out, uncheck the diffs and follow-ups under Include, or list its words in Also scrub.
Open in Wing after export -- Opens the file once it is written, showing Markdown and HTML rendered. This is the default.
Pressing Export... asks where to save the file, by default history-<project>-<date> with the format's extension. Wing remembers the dialog's choices for the project, except Secrets and the selected records.