@shanepadgett/tau-agent 0.9.1 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/subagents.md +1 -0
- package/extensions/context/README.md +2 -2
- package/extensions/context/settings.ts +2 -2
- package/extensions/publish/index.ts +8 -3
- package/extensions/subagent/README.md +1 -0
- package/extensions/subagent/agents/generalist.md +27 -0
- package/extensions/tau-help/help.md +1 -1
- package/package.json +2 -2
- package/schemas/tau.schema.json +1 -1
package/docs/subagents.md
CHANGED
|
@@ -52,6 +52,7 @@ Named tools and configured models must exist in the normally loaded child Pi env
|
|
|
52
52
|
|
|
53
53
|
## Built-ins
|
|
54
54
|
|
|
55
|
+
- `generalist` — focused analysis, review, implementation, or mixed work when no narrower agent fits
|
|
55
56
|
- `scout` — local exploration with `read`, `grep`, `find`, `ls`
|
|
56
57
|
- `web-research` — `websearch`, `codesearch`, `webfetch`
|
|
57
58
|
|
|
@@ -4,14 +4,14 @@ Context stores reusable repository work scopes in `.pi/contexts`. Folder names b
|
|
|
4
4
|
|
|
5
5
|
Use `/context` to select entries and inject their files through Tau autoread. Use `/context-sync` to reconcile affected scopes from the current Git changes. Tau validates context membership after agent turns and asks the agent to sync uncovered changed files or stale references automatically.
|
|
6
6
|
|
|
7
|
-
Validation is
|
|
7
|
+
Validation is disabled by default. Enable it globally or per project in Tau settings:
|
|
8
8
|
|
|
9
9
|
```json
|
|
10
10
|
{
|
|
11
11
|
"extensions": {
|
|
12
12
|
"context": {
|
|
13
13
|
"validation": {
|
|
14
|
-
|
|
14
|
+
"enabled": true,
|
|
15
15
|
"ignoreGlobs": ["generated/**"]
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -5,7 +5,7 @@ export default defineTauExtensionSettings({
|
|
|
5
5
|
key: "context",
|
|
6
6
|
defaults: {
|
|
7
7
|
validation: {
|
|
8
|
-
enabled:
|
|
8
|
+
enabled: false as boolean,
|
|
9
9
|
ignoreGlobs: [] as string[],
|
|
10
10
|
},
|
|
11
11
|
},
|
|
@@ -15,7 +15,7 @@ export default defineTauExtensionSettings({
|
|
|
15
15
|
Type.Object(
|
|
16
16
|
{
|
|
17
17
|
enabled: Type.Optional(
|
|
18
|
-
Type.Boolean({ default:
|
|
18
|
+
Type.Boolean({ default: false, description: "Validate context membership after agent turns." }),
|
|
19
19
|
),
|
|
20
20
|
ignoreGlobs: Type.Optional(
|
|
21
21
|
Type.Array(Type.String(), {
|
|
@@ -60,7 +60,7 @@ async function publish(pi: ExtensionAPI, ctx: ExtensionCommandContext): Promise<
|
|
|
60
60
|
const manifests = await loadManifests(repo.root);
|
|
61
61
|
const currentVersion = sharedVersion(manifests);
|
|
62
62
|
const tag = await latestReleaseTag(git, repo.root);
|
|
63
|
-
const bump = await recommendBump(git, repo.root, tag);
|
|
63
|
+
const bump = await recommendBump(git, repo.root, tag, currentVersion);
|
|
64
64
|
const version = tag ? incrementVersion(currentVersion, bump) : currentVersion;
|
|
65
65
|
const selectedBump = await ctx.ui.select(`Release ${version}`, [
|
|
66
66
|
`Use recommended ${bump} bump`,
|
|
@@ -153,10 +153,15 @@ async function latestReleaseTag(git: GitRunner, root: string): Promise<string |
|
|
|
153
153
|
return tags.split("\n").find((tag) => /^v\d+\.\d+\.\d+$/.test(tag));
|
|
154
154
|
}
|
|
155
155
|
|
|
156
|
-
async function recommendBump(
|
|
156
|
+
async function recommendBump(
|
|
157
|
+
git: GitRunner,
|
|
158
|
+
root: string,
|
|
159
|
+
tag: string | undefined,
|
|
160
|
+
currentVersion: string,
|
|
161
|
+
): Promise<Bump> {
|
|
157
162
|
const range = tag ? `${tag}..HEAD` : "HEAD";
|
|
158
163
|
const commits = await git.run(["log", "--format=%B%x00", range], { cwd: root });
|
|
159
|
-
if (/BREAKING CHANGE:|^[^\n]*!:/m.test(commits)) return "major";
|
|
164
|
+
if (/BREAKING CHANGE:|^[^\n]*!:/m.test(commits)) return currentVersion.startsWith("0.") ? "minor" : "major";
|
|
160
165
|
if (/^feat(?:\([^\n]+\))?:/m.test(commits)) return "minor";
|
|
161
166
|
return "patch";
|
|
162
167
|
}
|
|
@@ -6,6 +6,7 @@ Agent definitions can override the parent model and thinking level. If an overri
|
|
|
6
6
|
|
|
7
7
|
Tau includes three built-in agents:
|
|
8
8
|
|
|
9
|
+
- `generalist` handles focused analysis, review, implementation, or mixed work when no narrower agent fits. Delegated tasks should state their scope and desired depth.
|
|
9
10
|
- `scout` explores local files and code with `read`, `grep`, `find`, and `ls`.
|
|
10
11
|
- `web-research` researches web and code sources with `websearch`, `codesearch`, and `webfetch`.
|
|
11
12
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: generalist
|
|
3
|
+
description: Handle focused analysis, review, implementation, or mixed tasks when no narrower agent fits; specify scope and depth
|
|
4
|
+
tools:
|
|
5
|
+
- read
|
|
6
|
+
- patch
|
|
7
|
+
- grep
|
|
8
|
+
- find
|
|
9
|
+
- ls
|
|
10
|
+
model: openai-codex/gpt-5.5-sol
|
|
11
|
+
thinking: high
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
Delegated task is the contract. Complete it exactly. Do not expand scope, add features, or answer adjacent questions.
|
|
15
|
+
|
|
16
|
+
Match effort to requested depth and consequences:
|
|
17
|
+
|
|
18
|
+
- Quick opinion, lookup, or small review: inspect named inputs and minimum evidence needed for a reliable answer.
|
|
19
|
+
- Normal work: inspect direct dependencies, callers, data flow, and relevant checks.
|
|
20
|
+
- Deep, feature-wide, or maximum effort: investigate systematically, verify material assumptions, test important branches, and report unresolved risks.
|
|
21
|
+
- Unclear depth: use the smallest scope that can produce a reliable result. Spend more effort when mistakes could damage data, access, money, or correctness.
|
|
22
|
+
|
|
23
|
+
Start from paths, symbols, and constraints named in the task. Follow related code or documentation only when evidence requires it. Resolve minor ambiguity from available context. State blocking unknowns instead of inventing facts.
|
|
24
|
+
|
|
25
|
+
Change files or run mutating commands only when the task explicitly requests implementation or mutation. Reviews, analysis, and opinions are read-only. For requested changes, inspect before editing and run relevant targeted checks.
|
|
26
|
+
|
|
27
|
+
Return only the requested result. Follow any requested format. Include exact paths, evidence, checks, and unknowns when they support the result. Keep small answers small. Give deep tasks enough detail to justify conclusions.
|
|
@@ -28,7 +28,7 @@ Adds `/commit` for semantic commit grouping, review, and committing selected rep
|
|
|
28
28
|
|
|
29
29
|
## context
|
|
30
30
|
|
|
31
|
-
Adds `/context` to select reusable repository work scopes from `.pi/contexts`, and `/context-sync` to reconcile affected scopes from current Git changes. Tau
|
|
31
|
+
Adds `/context` to select reusable repository work scopes from `.pi/contexts`, and `/context-sync` to reconcile affected scopes from current Git changes. Context validation is disabled by default; when enabled, Tau checks changed-file membership and stale references after agent turns. Folder names are tabs, TOML files are concepts, and TOML sections are selectable entries.
|
|
32
32
|
|
|
33
33
|
## explore
|
|
34
34
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shanepadgett/tau-agent",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.0",
|
|
4
4
|
"description": "Tau is a custom agentic harness built with pi extensions",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"README.md"
|
|
29
29
|
],
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@shanepadgett/tau-tui": "0.
|
|
31
|
+
"@shanepadgett/tau-tui": "0.11.0",
|
|
32
32
|
"@toon-format/toon": "2.3.0",
|
|
33
33
|
"smol-toml": "1.7.0"
|
|
34
34
|
},
|