Metadata-Version: 2.4
Name: bazaar-contrib-agent
Version: 0.3.0rc10
Summary: Agent configuration, instances and local composition
License-Expression: Apache-2.0
License-File: LICENSE
Requires-Dist: bazaar-contrib-config~=0.3.0rc1
Requires-Dist: bazaar-contrib-messages~=0.3.0rc1
Requires-Dist: bazaar-contrib-collaboration~=0.3.0rc1
Requires-Dist: bazaar-contrib-reminder~=0.3.0rc1
Requires-Dist: bazaar-contrib-timer~=0.3.0rc1
Requires-Dist: bazaar-contrib-legacy-node-migrations~=0.3.0rc1
Requires-Dist: bazaar-core~=0.3.0rc1
Requires-Dist: bazaar-contrib-storage~=0.3.0rc1
Requires-Dist: bazaar-contrib-schema~=0.3.0rc1
Requires-Dist: bazaar-contrib-audit~=0.3.0rc1
Requires-Dist: bazaar-contrib-channel~=0.3.0rc1
Requires-Dist: bazaar-contrib-harness~=0.3.0rc1
Requires-Dist: bazaar-contrib-sidecar~=0.3.0rc8
Requires-Dist: bazaar-contrib-invoke~=0.3.0rc1
Requires-Dist: click>=8.1.0
Requires-Dist: jinja2>=3.1.6
Requires-Dist: pydantic>=2.12.0
Requires-Python: >=3.15
Project-URL: Repository, https://github.com/yuchanns/bazaar-compute-node
Description-Content-Type: text/markdown

# bazaar-contrib-agent

Configure agents with channel and harness contribs.

```sh
bcn contrib add agent --enable
```

The corresponding entry in `config.toml`:

```toml
version = "5"

[[contribs]]
package = "bazaar-contrib-agent==0.3.*"
[[contribs.enabled]]
entry = "agent-execution"
[[contribs.enabled]]
entry = "agent"
[contribs.enabled.config]
agents = []
```

Enable the channel and harness contribs you want to use, then create an agent:

```sh
bcn agent add \
  --name Desk \
  --channel CHANNEL_KIND \
  --harness HARNESS_KIND \
  --set agent.session.config.sandbox.policy=workspace-write
```

Replace `CHANNEL_KIND` and `HARNESS_KIND` with your enabled contrib names.
The default `session` mode gives each conversation a separate session.

Choose a value for `agent.session.config.sandbox.policy`:

| Value | Tool permissions and approval |
| --- | --- |
| `workspace-write` (default) | Write within the workspace; respond to tool approval requests using the channel's approval card. |
| `danger-full-access` | Full access with automatic tool approval. |

For example, give Desk full access:

```sh
bcn agent edit Desk --set agent.session.config.sandbox.policy=danger-full-access
```

To share one session across the agent's conversations, create it with
`dangerous_individual` mode. This mode always uses full access and automatic approval:

```sh
bcn agent add \
  --name Shared \
  --channel CHANNEL_KIND \
  --harness HARNESS_KIND \
  --set agent.mode=dangerous_individual
```

See [agent commands](../agent-command/README.md) for listing, editing, removing
agents and reviewing conversations.
