setup-environment-profile

A guide for configuring named ilert CLI profiles for staging, preview or self-hosted ilert environments. A profile stores which server and team context the CLI should use, while credentials remain in the operating system keyring.

In plain words
What is it for?
Use it to create or select an ilert environment profile, set its server address and OAuth client, and keep separate API specifications and credentials for each environment.
Why use it?
It prevents test or private server details from being hard-coded in the CLI source and makes switching environments explicit.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/ilert/ilert-cli/setup-environment-profile
Any agent
npx skills add iLert/ilert-cli --skill setup-environment-profile
Clone the repo
git clone --depth 1 https://github.com/iLert/ilert-cli

Made for: Claude Code, Codex.

Per session 28 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,761 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00028 $0.01761
Opus 5 $0.00014 $0.00881
Sonnet 5 $0.00006 $0.00352
Haiku 4.5 $0.00003 $0.00176

Measured yesterday against content hash 996063b5fa63, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

setup-environment-profile scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/setup-environment-profile/SKILL.md · 162 lines

How it starts

The opening of the file, as written. The whole thing — 162 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Setting up a profile for another ilert environment

Use this when the CLI has to talk to something other than ilert's production API — a staging or preview instance, or a self-hosted deployment.

Nothing about such an environment is compiled into the CLI. The endpoint and the OAuth application that goes with it live in the operator's own config, so setting one up is a configuration task, not a code change. Never add a hostname or client id to this repository — not to source, not to a test, not to this document.

What a profile is

A profile is a named bundle of where and as whom, stored in config.json (ilert config show prints the path):

Setting Flag Environment variable
base_url --base-url ILERT_BASE_URL
oauth_client_id --oauth-client-id ILERT_OAUTH_CLIENT_ID
team_context --team-context ILERT_TEAM_CONTEXT

Each resolves flag → environment → profile → built-in default, and the built-in default is production. Credentials never go in that file; they go to the OS keyring under the profile's name. The cached API spec is also per environment, so ilert --help under one profile lists that environment's commands and cannot be polluted by another's.

--profile NAME (or ILERT_PROFILE) selects one and works anywhere on the command line. Switching environments is what --profile is for. A credential is bound to the endpoint that issued it, so --base-url on an ordinary command does not borrow another profile's login — it is refused (see below). --base-url belongs on auth login, where a credential for that environment is obtained.

What you need before you start

Two values, both specific to the target environment:

  1. The API base URL — the API host, not the web app.
  2. The OAuth client id of the CLI application registered on that environment. A client id is only valid at the endpoint it was registered with; production's will be rejected.

Ask the user for both. Do not guess a hostname from a pattern, do not reuse a value from another environment, and do not go looking for them in the codebase — they are deliberately not there. They may already be exported as ILERT_BASE_URL and ILERT_OAUTH_CLIENT_ID, which is worth checking first.

Read the full file on GitHub · 162 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 162 lines · 28 tokens per session scan A 996063b5fa63

Subscribe to this mod's changes

setup-environment-profile is a skill published in the GitHub repository iLert/ilert-cli (2 stars, last pushed 12d ago), licensed Apache-2.0. It adds 28 tokens to every session and 1,761 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

investigate

The entry point for any software problem -- deployment failures, infrastructure issues, performance degradation, errors, or anything going wrong. Use when the user wants to understand what's happening, check on issues, check on the status of an investigation, ask about their systems, query Antimetal's AI for context…

antimetal/cursor-plugin · 88 tokens

fix

Fix a software issue by applying Antimetal's remediation to your codebase. Use when the user wants to fix, resolve, patch, remediate, or apply changes for any issue—or when they say things like "how do I fix this", "what should I change", "apply the fix", "let's resolve it", or when investigation is done and the next…

antimetal/cursor-plugin · 81 tokens

antimetal-mcp-setup

Ensures the Antimetal MCP server is configured and ready to use. Run this before attempting to call any Antimetal MCP tools—if the API key is missing, tools will fail silently.

antimetal/cursor-plugin · 48 tokens

opencli-sitemap-author

Use when creating or maintaining OpenCLI site sitemaps: agent-facing navigation, page-state, action, workflow, API-reference, pitfall, and fallback knowledge for a website. Use after browser exploration discovers durable site context, when a sitemap is stale, or when promoting local site knowledge into the repo.

jackwener/OpenCLI · 67 tokens

golden-rss

Use when testing the rss golden build.

yusufkaraaslan/Skill_Seekers · 12 tokens

github-security-fix

Remediate GitHub security / Dependabot / CodeQL / code-quality alerts via fixgithubsecurityalert.

Tracer-Cloud/opensre · 27 tokens