GoogleCloudPlatform / GoogleCloudPlatform/scion

feat: read/write project config as agent-accessible tool

Open
#473 0 comments 0 reactions 0 assignees View on GitHub
area:harness area:workspace type:feature
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.