Endor Agent Kit Setup For Claude Code
Generated for the Endor Labs Agent Kit Claude Code plugin.
Claude Install And Upgrade Notice
endor-labs-agent-kit@endorlabsis the preferred Claude Code plugin id for new installs.- Existing
ai-plugins@endorlabsusers can keep using the legacy compatibility package. - Do not enable both Claude plugin ids in the same profile because they expose the same agents and setup skill.
- The plugin does not auto-disable, uninstall, or edit Claude settings for either id.
Bundled Claude Code Agents
AI SAST Remediation-> Claude Code agentai-sast-remediationCI/CD And Supply Chain Posture-> Claude Code agentcicd-postureConfiguration Automation-> Claude Code agentconfiguration-automationDependency Reviewer-> Claude Code agentdependency-reviewerFindings Browser-> Claude Code agentfindings-browserMalware Responder-> Claude Code agentmalware-responderOSS Upgrade Investigator-> Claude Code agentoss-upgrade-investigatorRemediation Planning-> Claude Code agentremediation-planningSCA Remediation-> Claude Code agentsca-remediationTroubleshooting-> Claude Code agenttroubleshootingVulnerability Explainer-> Claude Code agentvulnerability-explainer
Claude Code Plugin Install Commands
From the public ai-plugins distribution repository:
/plugin marketplace add endorlabs/ai-plugins
/plugin install endor-labs-agent-kit@endorlabs
From a local checkout of the Agent Kit repository root:
/plugin marketplace add ./
/plugin install endor-labs-agent-kit@endorlabs
For package-only local validation, add the generated Claude marketplace:
/plugin marketplace add ./plugins/claude
/plugin install endor-labs-agent-kit@endorlabs
Endor Agent Kit Setup
Use this setup workflow when the user asks to install, check, update, or remove
Endor Labs Agent Kit plugin support files, or when an Endor Agent Kit workflow
is blocked by missing endorctl, GitHub CLI, authentication, namespace, or
local toolchain readiness.
Setup Contract
Be proactive about checking the environment, but do not make persistent changes without explicit user approval. Report evidence for each check. Never print secret values.
Setup may:
- Inspect command availability and versions for
endorctl,gh,git, and workflow-relevant language tooling. - Read
ENDOR_NAMESPACEfrom the current process environment and report it as namespace provenance when present. - Safely parse
~/.endorctl/config.yamlfor non-secret fields such asENDOR_APIandENDOR_NAMESPACE. - Report the presence of credential fields by key name only.
- Report the presence of
ENDOR_API_CREDENTIALS_*authentication variables by key name only. - Run lightweight read-only Endor auth verification when config or credentials are present.
- Offer re-authentication when verification fails.
- Check
ghauthentication and point to official installation guidance. - Inspect Endor MCP support when a selected workflow needs MCP or the user asks for MCP setup.
- Offer host-specific Endor MCP configuration only after explaining the exact file, command, and validation step.
- Install, update, or uninstall host-specific Agent Kit support files only after explicit approval.
Setup must not:
- Run
endorctl scan. - Run
endorctl host-check. - Print
~/.endorctl/config.yamlor secret values. - Read, cat, source, recurse through, or point
ENDORCTL_CONFIGor--config-pathat tenant-specific, customer-specific, production, backup, or other non-default Endor config directories. - Ask the user to paste API keys, API secrets, tokens, or passwords into chat.
- Write
ENDOR_API_CREDENTIALS_KEYorENDOR_API_CREDENTIALS_SECRET. - Edit shell profile files such as
.zshrc,.bashrc, or PowerShell profile. - Install
gh, package managers, language runtimes, Docker, JDKs, or build tooling. - Configure MCP globally without explicit user approval. MCP remains opt-in per recipe/workflow.
Readiness Report
Start with a concise readiness report. Separate configured state from verified state.
Include these sections when relevant:
- Ready
- Needs action
- Optional checks
- Available fixes
For Endor auth, report sanitized fields only:
Endor config: found
API endpoint: https://api.endorlabs.com
Namespace candidates:
- ENDOR_NAMESPACE: not set
- ~/.endorctl/config.yaml ENDOR_NAMESPACE: example-namespace
Selected namespace: example-namespace from ~/.endorctl/config.yaml
Auth: API credential fields present
Endor auth: verified for namespace example-namespace
Secret values: hidden
If a namespace is missing, say that a namespace is required before live Endor lookups. If a namespace is detected, let the user use it or override it for the current workflow.
If ENDOR_NAMESPACE from the current process environment and
~/.endorctl/config.yaml disagree, surface both values and stop before live
Endor lookups. Ask the user which namespace to use for this workflow. Do not
silently trust either value, and do not unset environment variables or edit
config files unless the user explicitly asks for that separate operational
cleanup.
When the user selects or supplies a namespace, later workflow agents must pass
it explicitly with -n <namespace> or --namespace <namespace> for scoped
Endor lookups rather than relying on bare endorctl namespace resolution.
Endor Tooling
If endorctl is missing, offer documented install options in this order:
- Package manager route when available, such as Homebrew or npm.
- Direct binary download with checksum verification.
Only install endorctl after explicit approval. If installing to ~/bin, tell
the user how to update PATH for the current shell. Do not edit shell profiles.
If API credential fields are present, do not run browser auth unless the user
explicitly asks to switch or re-authenticate. If API credential setup is needed,
tell the user to set ENDOR_API_CREDENTIALS_KEY and
ENDOR_API_CREDENTIALS_SECRET through their preferred secure environment
mechanism.
When browser or SSO authentication is requested, confirm the namespace first. Use non-interactive flags where supported. If multi-tenant selection appears, summarize the available tenant choices and ask the user before retrying.
Endor MCP
Require endorctl agent api --help to succeed for workflows that use Endor CLI
API calls. Each selected workflow must pass its canonical recipe id through
--agent-id; never fall back to the unattributed legacy API command. Configure
Endor MCP only when a selected MCP-capable workflow needs it or the user
explicitly asks for it.
The distribution may include ready-to-use Endor MCP config snippets such as
root .mcp.json or Gemini mcpServers metadata. Treat those files as setup
inputs, not permission to start or register MCP without approval.
When MCP setup is requested:
- Check whether
npxis available. - Check whether
endorctlis available. - Verify the proposed server command is:
npx -y endorctl ai-tools mcp-server. - Inspect the host-specific MCP config location or installed plugin metadata.
- If
endor-cli-toolsis already registered, report it and ask before changing anything. - If it is missing, show the exact config that would be added and ask for approval before writing host config files.
- After approval and configuration, validate in a fresh host session when the host supports tool visibility checks.
Do not claim Endor MCP tools are available to a workflow until the host exposes
them in the current session. If MCP tools are unavailable, continue with
CLI-first workflows when they support endorctl agent api --agent-id <canonical-recipe-id>; otherwise record the missing MCP capability in
data_gaps.
GitHub CLI
Check gh auth status when workflows need GitHub evidence, repository
inventory, pull requests, or comments. If gh is missing, provide current
official installation guidance instead of installing it automatically.
Do not manage GitHub token scopes or create personal access tokens. Verify only the specific read or write capability needed for the selected workflow.
Language Tooling
Detect and report workflow-relevant package managers, language runtimes, and build tools. Do not install them.
When tooling is missing, report the affected validation step and ask the user to install it through their team-standard toolchain.
Workflow Safety
Setup never performs remediation, creates branches, opens PRs/MRs, posts comments, writes Endor policies, or runs scans. Mutating workflows such as SCA Remediation and AI SAST Remediation keep those actions behind their generated agent approval gates.
Claude-Specific Rules
- Prefer the default Claude Code user-scope plugin install unless the user explicitly requests project, local, or managed scope.
- Do not copy plugin-packaged agents into
.claude/agents/when marketplace installation is available. - Do not add plugin-wide MCP automatically. Only guide per-workflow MCP setup when the selected workflow needs it and the user approves.
- The primary
endor-labs-agent-kitplugin also ships advisory hooks for prompt routing, dependency installs, and dependency manifest edits. Hooks are fail-open, read-only, and never run Endor commands. - Claude Code plugin-shipped agents cannot declare
mcpServers,permissionMode, orhooksin agent frontmatter; report unavailable MCP-only signals indata_gaps. - Tell the user to restart or reload Claude Code after installing or updating the plugin.