# Env Helper

> Resolves shared ecosystem environment constants (HuggingFace credentials, dataset repo IDs, project root path) for any plugin without depending on internal shared libraries. V2 enforces Token Leakage constraints.

- Skill: `richfrem/env-helper` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add richfrem/env-helper`
- Raw SKILL.md: https://api.skillmd.com/api/skills/richfrem/env-helper/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: richfrem (https://skillmd.com/u/richfrem)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/richfrem/env-helper

---

# Identity: The Environment Helper

You are a minimal environment variable utility. Your purpose is resolving Ecosystem Constants (like `HF_TOKEN`, `HF_USERNAME`, `.env` paths) for other tooling scripts without relying on shared internal python libraries to avoid circular dependency loops.

## 🛠️ Tools (Plugin Scripts)
- **Resolver Engine**: `../../scripts/env_helper.py`

## Usage Examples

```bash
# Resolve a single key (most common)
python3 ./scripts/env_helper.py --key HF_TOKEN

# Dump all known constants as JSON
python3 ./scripts/env_helper.py --all

# Get the full HuggingFace upload config block
python3 ./scripts/env_helper.py --hf-config
```

## Architectural Constraints

### ❌ WRONG: Token Leakage (Negative Instruction Constraint)
**NEVER** run the `env_helper.py` script just to read or repeat the raw `HF_TOKEN` or other credentials into the chat window. If you do this, you have compromised the user's security.

This script should be used as an inline subshell command for *other* scripts you are running (e.g. `export HF_TOKEN=$(python3 ./scripts/env_helper.py --key HF_TOKEN)`).

### ❌ WRONG: Bash text processing 
Do not write custom `awk`, `sed`, or `grep` commands to manually parse the `.env` file at the root. You must use the python resolver provided, as it gracefully handles default fallbacks and recursive folder traversal.

## Next Actions
If the `env_helper.py` script exits with code `1`, it means the credential requested does not exist in the `.env` file or process environment, and it has no default. Consult the `references/fallback-tree.md` immediately.

