forked from farhoodlabs/skills
feat(agent-setup): add skill to derive and export GH_CONFIG_DIR from AGENT_HOME
Provides a session dotfile ($AGENT_HOME/.env) that subsequent skills can source to inherit GH_CONFIG_DIR.
This commit is contained in:
@@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
name: agent-setup
|
||||||
|
description: Validate AGENT_HOME, derive GH_CONFIG_DIR, and export both to a session dotfile for use by other skills.
|
||||||
|
---
|
||||||
|
|
||||||
|
# Agent Setup Skill
|
||||||
|
|
||||||
|
Validates the `AGENT_HOME` environment variable, derives `GH_CONFIG_DIR` as `$AGENT_HOME/.github`, and exports both to a session dotfile so that child bash sessions and skills invoked in the same session inherit them.
|
||||||
|
|
||||||
|
## Required Environment Variables
|
||||||
|
|
||||||
|
| Variable | Description |
|
||||||
|
|---|---|
|
||||||
|
| `AGENT_HOME` | The agent's home directory. Must be an absolute path. |
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bash agent-setup/scripts/setup.sh
|
||||||
|
source ~/.env
|
||||||
|
```
|
||||||
|
|
||||||
|
## Output
|
||||||
|
|
||||||
|
- `GH_CONFIG_DIR` is set to `$AGENT_HOME/.github` and exported
|
||||||
|
- A dotfile (`~/.env` inside `AGENT_HOME`) is written with `export GH_CONFIG_DIR=...` for session inheritance
|
||||||
Executable
+18
@@ -0,0 +1,18 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
die() { echo "ERROR: $*" >&2; exit 1; }
|
||||||
|
|
||||||
|
[[ -z "${AGENT_HOME:-}" ]] && die "AGENT_HOME is not set"
|
||||||
|
|
||||||
|
# Derive GH_CONFIG_DIR — gh stores config at ~/.config/gh by default,
|
||||||
|
# so we mirror that structure under AGENT_HOME
|
||||||
|
export GH_CONFIG_DIR="$AGENT_HOME/.github"
|
||||||
|
|
||||||
|
# Write to a session dotfile so child processes inherit the variables
|
||||||
|
mkdir -p "$AGENT_HOME"
|
||||||
|
cat > "$AGENT_HOME/.env" <<EOF
|
||||||
|
export GH_CONFIG_DIR="$GH_CONFIG_DIR"
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo "GH_CONFIG_DIR set to $GH_CONFIG_DIR"
|
||||||
Reference in New Issue
Block a user