flowstate-epic-flowstate-community-epicdm-flowstate-env
Package-local agent skill for @epicdm/flowstate-env.
Tags
Publisher
Versions
1 version published — latest: 1.0.7
- 1.0.7publishedInvalid Date
Skill
flowstate-env Package Skill
Package: @epicdm/flowstate-env
Repository: epic-flowstate-community
Path: packages/flowstate-env
Version: 1.0.7
Use this published Dojo skill as the package-level entrypoint. For detailed workflows, use the package-local skills listed below.
Primary Package Workflow
FlowState Env Cache Lifecycle
Package: @epicdm/flowstate-env
Package path: packages/flowstate-env
Use this skill when debugging stale secrets or changing cache behavior.
Cache Model
Cache stores values in memory with expiresAt = Date.now() + ttl * 1000. Disabled caches ignore set() and return undefined from get().
Client Operations
| Operation | Behavior |
|---|---|
get(reference) | Uses cache first, then provider, then caches value. |
refresh(reference) | Bypasses cache through provider refresh, then updates cache. |
refreshAll() | Refreshes keys currently known to the cache. |
clearCache() | Clears client cache. |
resetSecrets() | Clears singleton cache and drops singleton instance. |
closeSecrets() | Closes singleton provider and drops singleton instance. |
Pitfalls
Cache.keys()returns stored keys even if some are expired untilget()deletes them.refreshAll()can attempt to refresh expired keys that remain in the store.- Cache is in-memory only; it is not shared across processes.
Verification
Run:
yarn workspace @epicdm/flowstate-env test -- cache
Package Skill Inventory
Package Skill Inventory: @epicdm/flowstate-env
Package path: packages/flowstate-env.
Skill Map
| Skill | Type | Trigger | Teaches | Dojo |
|---|---|---|---|---|
flowstate-env | orchestrator | Use when integrating, changing, testing, or documenting @epicdm/flowstate-env | Package purpose, skill routing, default workflows | local-only |
flowstate-env-secret-resolution | workflow | Use when reading one or more secrets through singleton helpers or manual FlowstateEnv | getSecret, getSecretsBatch, manual client setup, provider initialization | ready-after-review |
flowstate-env-provider-registry | workflow/reference | Use when choosing, registering, or implementing a secret provider | Built-in providers, custom providers, BaseProvider, provider errors | ready-after-review |
flowstate-env-cache-lifecycle | workflow/reference | Use when controlling cache, refresh, reset, or close behavior | TTL cache, refresh, refreshAll, resetSecrets, closeSecrets | ready-after-review |
flowstate-env-onepassword-ops | workflow/troubleshooting | Use when configuring 1Password-backed secret resolution | Vault config, service account token, op:// references, list limitation | ready-after-review |
flowstate-env-maintenance | maintenance | Use before changing exports, secret names, defaults, provider behavior, docs, feature matrix, or Dojo | Verification, docs drift, typing risks, generated Dojo gate | local-only |
Anti-Sprawl Decision
Do not create one skill per constant/helper. The real workflows are secret resolution, provider selection/extension, cache lifecycle, 1Password operation, and maintenance.
Deferred Skills
- Dedicated secret-name catalog skill: defer until
SecretNamesgrows into a larger cross-package schema. - Dedicated env-provider skill: fold into provider registry and secret resolution.
Review Gate
Package Skills Review: @epicdm/flowstate-env
Verdict
Pass with fixes.
The authored skills teach the package workflows instead of generated symbol labs.
Findings
| Severity | Skill | Issue | Evidence | Required Fix |
|---|---|---|---|---|
| Important | onepassword-ops | Docs/comments imply CLI fallback, but source requires service account token or OP_SERVICE_ACCOUNT_TOKEN | src/config.ts, src/providers/1password/client.ts | Keep warning until docs/source align |
| Important | maintenance | Public types use any in several places | src/types.ts, src/client.ts, provider client | Track before strict API claims |
| Important | dojo | Existing Dojo content is generated and inaccurate about tests | .flowstate/dojo/*, tests | Rebuild before publication |
| Minor | cache-lifecycle | Expired cache keys remain visible to keys() until read/deleted | src/cache.ts | Documented in skill |
Coverage
| Feature Group | Status | Skill |
|---|---|---|
| Singleton secret helpers | Covered | secret-resolution |
| Manual client lifecycle | Covered | secret-resolution |
| Provider registry/custom providers | Covered | provider-registry |
| Env and 1Password providers | Covered | provider-registry, onepassword-ops |
| TTL cache and reset/close helpers | Covered | cache-lifecycle |
| Secret names/default config | Covered | maintenance and secret-resolution |
| Generated Dojo | Deferred | maintenance |
Verification
Commands run:
yarn workspace @epicdm/flowstate-env test
yarn workspace @epicdm/flowstate-env typecheck
yarn workspace @epicdm/flowstate-env build
yarn workspace @epicdm/flowstate-env lint
Results:
- Tests passed: 7 suites, 42 tests.
- Typecheck passed.
- Build passed.
- Lint passed with 6 existing
anywarnings.
Dojo Publication Decision
Do not publish existing generated .flowstate/dojo artifacts. Rebuild from reviewed workflow skills after verification and docs drift review.
Usage
Start with this skill to understand the package purpose, then use the package-local focused skills for specific workflows. Keep this Dojo version aligned with packages/flowstate-env/package.json. Do not treat generated feature lists as lessons; use workflow evidence from CODE-REVIEW.md, SKILL-INVENTORY.md, and REVIEW.md.
Install
Run this in your project to install via CLI:
fscloud dojo skill install flowstate-epic-flowstate-community-epicdm-flowstate-env --target <target> --out ./skillsReplace <target> with your agent target identifier. See the CLI docs for details.