You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Within one config directory, AgentV reads `config.yaml` first and `config.local.yaml` second. The local overlay wins: plain objects deep-merge, arrays replace, and scalar values from `config.local.yaml` override `config.yaml`.
459
459
460
-
Use `config.yaml` for portable defaults and shared eval-definition fields that can be committed with the eval project. Use `config.local.yaml` for machine-local overrides such as private paths, local result remotes, Dashboard project registry entries, or temporary execution defaults. Project-local `config.local.yaml` is gitignored by default.
460
+
Use project-local `config.yaml` for portable defaults and shared
461
+
eval-definition fields that can be committed with the eval project. Do not put
462
+
operator-specific result publishing remotes in a shared eval project's
463
+
`.agentv/config.yaml`: different users and CI identities often publish to
464
+
different result repositories or do not publish at all. Put those project
465
+
registry and result-sync preferences in the user/global AgentV config pair
466
+
(`$AGENTV_HOME/config.yaml` or `$AGENTV_HOME/config.local.yaml`, default
467
+
`~/.agentv/...`) unless the project intentionally owns one canonical public
468
+
results repo. Use project-local `config.local.yaml` only for local overrides
469
+
that must stay beside the checkout, such as temporary execution defaults or
470
+
private workspace paths. Project-local `config.local.yaml` is gitignored by
471
+
default.
461
472
462
473
### YAML config (`config.yaml` plus optional `config.local.yaml`)
463
474
@@ -653,7 +664,11 @@ set AGENTV_HOME=D:\agentv-config
653
664
654
665
When unset, AgentV uses `~/.agentv`.
655
666
656
-
For local workspaces, put portable registry defaults in `$AGENTV_HOME/config.yaml` and machine-local project paths or result remotes in `$AGENTV_HOME/config.local.yaml`:
667
+
For local workspaces, prefer registering projects and result remotes in the
668
+
user/global AgentV config pair instead of committing them to the eval project.
669
+
Use `$AGENTV_HOME/config.yaml` for your normal personal or CI registry. Use
670
+
`$AGENTV_HOME/config.local.yaml`when the values are temporary, machine-local, or
671
+
an overlay on a shared mounted global config.
657
672
658
673
```yaml
659
674
projects:
@@ -664,6 +679,10 @@ projects:
664
679
branch: agentv/results/v1
665
680
```
666
681
682
+
Only commit `projects[].results` in a project-local `.agentv/config.yaml` when
683
+
that repository deliberately owns a shared canonical results destination, such
684
+
as a public demo results repo.
685
+
667
686
For larger registries, `$AGENTV_HOME/config.yaml` can point `projects` at a
Copy file name to clipboardExpand all lines: docs/solutions/best-practices/name-portable-config-endpoints-by-user-intent.md
+8-1Lines changed: 8 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,7 +23,7 @@ applies_when:
23
23
24
24
While adding Git-backed dashboard result remotes, the initial nested results repository config used `results.repo.url` for the Git endpoint URL and left `remote` available for the local Git remote-name implementation detail. That split was technically precise but did not match how users talk about portable Git sync configuration: in related tools such as Beads, `remote` names the shared endpoint URL, not a machine-local alias.
25
25
26
-
For a checked-in AgentV project config, requiring a local Git remote alias would make the file depend on per-machine setup. The portable contract only needs the endpoint URL, a local path, and the branch/ref that stores artifacts.
26
+
For a checked-in AgentV project config, requiring a local Git remote alias would make the file depend on per-machine setup. The portable contract only needs the endpoint URL, a local path, and the branch/ref that stores artifacts. Even with portable endpoint names, result publishing is often an operator preference: different users, CI jobs, and private-review flows may publish to different remotes or skip publishing entirely. Shared eval projects should not commit those user-specific result destinations unless the project intentionally owns one canonical results repo.
27
27
28
28
## Guidance
29
29
@@ -48,6 +48,12 @@ Internally, the runtime can still create or use a Git remote name such as `origi
48
48
49
49
Keep established neighboring contracts intact unless they are part of the same user-facing block. Source project repositories already use `projects[].repo.url`, so changing results repository config to `results.repo.remote` does not require renaming source project `repo.url`.
50
50
51
+
For user-specific result publishing, prefer the user/global AgentV config pair
52
+
(`$AGENTV_HOME/config.yaml` or `$AGENTV_HOME/config.local.yaml`, default
53
+
`~/.agentv/...`) over a repo-local `.agentv/config.yaml`. That keeps the eval
54
+
project portable while letting each operator choose their own result remote,
55
+
local checkout path, branch, and `auto_push` policy.
56
+
51
57
## Why This Matters
52
58
53
59
Portable config is commonly checked into a repository, copied into Docker development environments, or generated by setup scripts. A field that accepts a machine-local alias forces every machine and container to create the same Git remote name before the config works.
@@ -59,6 +65,7 @@ Using `remote` for the endpoint URL in the results repository block matches the
59
65
- A config file describes Git sync, artifact publishing, or result storage that should work from a fresh clone or container.
60
66
- A field could mean either a remote endpoint URL or a local Git remote-name alias.
61
67
- A setup script is expected to generate config that a developer can run with `bun run ...` from a latest checkout.
68
+
- A result remote reflects a user's publishing destination rather than a project-owned canonical artifact repository.
0 commit comments