GoogleCloudPlatform / GoogleCloudPlatform/scion
feat: read/write project config as agent-accessible tool
- Dominant language
- Go
- Stars
- 1.7k
- Forks
- 263
- Avg merge
- 7h 6m
- Merged PRs (30d)
- 447
Description
## Problem
Agents cannot programmatically read or modify their project's configuration (templates, env vars, shared directories, agent defaults). This prevents agents from:
- Self-replicating project setups across environments
- Adjusting their own project config based on task requirements
- Exporting project config for backup or migration
## Proposed Solution
Expose project configuration via the Hub API or as agent-accessible tools:
### Read config
```
scion project config get --format json
```
Returns: templates list, env vars (names only, not values), shared directories, agent defaults, project metadata.
### Write config
```
scion project config set --from-file config.json
```
Applies: template assignments, env var names (values provided separately via secrets), shared directory mappings.
## Security Considerations
**This could be a security concern** and may warrant restricted implementation:
- **Read config**: Low risk if secrets/values are excluded (only names and structure). Medium risk if it exposes env var values or connection strings.
- **Write config**: Medium-high risk — an agent modifying its own project config could escalate privileges, change template assignments, or alter env vars that affect other agents in the same project.
### Possible mitigations
- Read-only by default, write requires explicit admin approval
- Write operations logged and auditable
- Env var values never readable (only names)
- Secrets never included in read or write
- Write restricted to project-level settings, not hub-level
- Rate limiting on config writes
## Use Cases
1. Agent sets up a new project to match a known-good configuration
2. Agent exports its project config for documentation or replication
3. CI/CD pipeline provisions projects programmatically
4. Agent adjusts template assignments based on task type
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue does not name files, tests, or entry points. Start by locating the existing project-configuration and Hub API or agent-tool implementations, then establish how the proposed CLI commands should integrate. Done should include safe config reads and writes, excluding secret values and applying the stated approval, audit, scope, and rate-limit requirements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, backend-api-design, cli, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100