scitex-agent-container

Getting Started

  • Installation
    • From PyPI
    • From Source
    • Requirements
  • Quickstart
  • Templates and Examples
    • Pattern Templates
    • Instantiating a Template
  • Status and Hook Integration
    • Rich Status
    • Claude Code Hook Integration
    • Zero Coupling Design

Architecture & Reference

  • How sac works
    • Launch flow
    • What each piece does
      • spec.yaml (SSoT)
      • to_home/ (optional)
      • Apptainer instance
      • Claude SDK session
      • A2A inbound (spec.a2a.port)
      • sac listen (control plane)
    • Restart / health
    • See also
  • YAML Spec Reference (v3)
    • Quick links
    • Top-level shape
    • Field reference
      • metadata.labels → AgentCard fields
      • spec — top-level
      • spec.apptainer — engine knobs
      • spec.claude — SDK knobs
      • spec.health / spec.restart / spec.watchdog / spec.autonomous
      • spec.a2a / spec.listen — network endpoints
      • ~/.scitex/agent-container/config.yaml
      • Skills
      • spec.mcp_servers
      • spec.telegram / spec.hooks / spec.extensions
    • Lifetime / session selection
    • kind: AgentProxy — HTTP forwarder agents
      • spec.proxy reference
      • Security notes
    • Examples
  • Talking to a Running Agent
    • 1. A2A sidecar — POST /agents/<name>/turn
      • Send a turn
      • Discover the agent
      • One-shot vs follow-up
    • 2. CLI — sac agents send / sac agents tail
    • 3. sac listen — host-level HTTP control plane
    • Cross-host: sac --on <peer>
    • Forwarding to external A2A (kind: AgentProxy)
    • Picking a transport
    • See also
  • Container Isolation in sac
    • Apptainer’s default leak paths (10 categories)
      • 1. Auto-bound filesystem paths
      • 2. Environment variable inheritance
      • 3. User / permission inheritance
      • 4. Network transparency
      • 5. Process / IPC / UTS namespaces
      • 6. SIF build-time leaks (Apptainer-specific)
      • 7. Overlay state persistence
      • 8. --writable vs --writable-tmpfs confusion
      • 9. Indirect leakage via bind-mounts
      • 10. Apptainer version differences
    • sac’s hardened defaults
      • Canonical container HOME — /home/agent (D5)
    • Roadmap for sac’s isolation surface
    • One-line summary for papers / READMEs
    • See also
  • Configuration and Runtime Directories
    • Layout
    • Configuration cascade
  • Claude Code credential & settings files
    • Files
      • ~/.claude.json
      • ~/.claude/.credentials.json
      • ~/.claude/settings.json
    • Fleet hosts
    • What NOT to emit
    • Safe metadata fields (whitelist)
  • Apptainer Images
    • Builtin layers
    • Build
    • Sandbox / freeze workflow
    • Pinning a custom image

Ecosystem

  • sac and orochi
    • The comms model — what sac knows
      • Lineage — parent / children
      • Group — the unit of default ACL
      • Depth limit — a POLICY, not a structural limit
      • ACL — permissioned messaging
      • Authenticated identity (handoff §4 acceptance)
      • Cross-host forwarding — per-host bearer registry
      • A2A compliance
      • What sac knows vs doesn’t
    • The corrected boundary
      • Responsibility split
    • How orochi consumes sac
    • Standalone use
    • Live instance

API Reference

  • scitex_agent_container API Reference
    • Config
      • AgentConfig
        • AgentConfig.name
        • AgentConfig.runtime
        • AgentConfig.image
        • AgentConfig.model
        • AgentConfig.workdir
        • AgentConfig.python_venv
        • AgentConfig.env
        • AgentConfig.env_files
        • AgentConfig.screen_name
        • AgentConfig.labels
        • AgentConfig.container
        • AgentConfig.claude
        • AgentConfig.health
        • AgentConfig.watchdog
        • AgentConfig.restart
        • AgentConfig.autonomous
        • AgentConfig.apptainer
        • AgentConfig.hooks
        • AgentConfig.listen
        • AgentConfig.extensions
        • AgentConfig.skills
        • AgentConfig.context_management
        • AgentConfig.__init__()
        • AgentConfig.startup_commands
        • AgentConfig.startup_prompts
        • AgentConfig.mcp_servers
        • AgentConfig.multiplexer
        • AgentConfig.hosts_spec
        • AgentConfig.scheduling
        • AgentConfig.config_path
        • AgentConfig.mounts
        • AgentConfig.user
        • AgentConfig.a2a
        • AgentConfig.kind
        • AgentConfig.proxy
        • AgentConfig.to_home
        • AgentConfig.expanded_workdir
      • ClaudeSpec
        • ClaudeSpec.model
        • ClaudeSpec.channels
        • ClaudeSpec.flags
        • ClaudeSpec.raw_options
        • ClaudeSpec.session
        • ClaudeSpec.continue_max_age_minutes
        • ClaudeSpec.resume_id
        • ClaudeSpec.auto_accept
        • ClaudeSpec.account
        • ClaudeSpec.provider
        • ClaudeSpec.__init__()
      • ContainerSpec
        • ContainerSpec.runtime
        • ContainerSpec.image
        • ContainerSpec.volumes
        • ContainerSpec.network
        • ContainerSpec.mount_host_claude
        • ContainerSpec.__init__()
      • ContextManagementConfig
        • ContextManagementConfig.trigger_at_percent
        • ContextManagementConfig.strategy
        • ContextManagementConfig.warn_before_n_checks
        • ContextManagementConfig.check_interval_seconds
        • ContextManagementConfig.state_file
        • ContextManagementConfig.enabled
        • ContextManagementConfig.__init__()
      • HealthSpec
        • HealthSpec.enabled
        • HealthSpec.interval
        • HealthSpec.timeout
        • HealthSpec.method
        • HealthSpec.__init__()
      • HookSpec
        • HookSpec.pre_start
        • HookSpec.post_start
        • HookSpec.pre_stop
        • HookSpec.post_stop
        • HookSpec.on_compact
        • HookSpec.on_restart
        • HookSpec.on_diff
        • HookSpec.counts()
        • HookSpec.__init__()
      • HostsSpec
        • HostsSpec.host
        • HostsSpec.hosts
        • HostsSpec.__init__()
      • ListenPort
        • ListenPort.port
        • ListenPort.proto
        • ListenPort.path
        • ListenPort.name
        • ListenPort.owner
        • ListenPort.__init__()
      • ProviderSpec
        • ProviderSpec.base_url
        • ProviderSpec.__init__()
        • ProviderSpec.auth_token_env
      • ProxySpec
        • ProxySpec.upstream
        • ProxySpec.trust
        • ProxySpec.redact
        • ProxySpec.__init__()
        • ProxySpec.timeout_s
      • RestartSpec
        • RestartSpec.policy
        • RestartSpec.max_retries
        • RestartSpec.backoff_initial
        • RestartSpec.backoff_max
        • RestartSpec.backoff_multiplier
        • RestartSpec.__init__()
      • SchedulingSpec
        • SchedulingSpec.mode
        • SchedulingSpec.preferred_host
        • SchedulingSpec.fallback_hosts
        • SchedulingSpec.__init__()
      • SkillsSpec
        • SkillsSpec.required
        • SkillsSpec.available
        • SkillsSpec.injection_mode
        • SkillsSpec.match_by
        • SkillsSpec.match_style
        • SkillsSpec.__init__()
      • StartupCommand
        • StartupCommand.delay
        • StartupCommand.command
        • StartupCommand.__init__()
      • WatchdogSpec
        • WatchdogSpec.enabled
        • WatchdogSpec.interval
        • WatchdogSpec.resp_y_n
        • WatchdogSpec.resp_y_y_n
        • WatchdogSpec.resp_waiting
        • WatchdogSpec.__init__()
      • compose_effective_name()
      • load_config()
      • resolve_config()
      • resolve_hostname()
      • substitute_hostnames()
      • validate_config()
    • Runtimes
      • PromptHandler
        • PromptHandler.name
        • PromptHandler.detect
        • PromptHandler.keys
        • PromptHandler.priority
        • PromptHandler.__init__()
      • _detect_bypass_permissions()
      • _detect_dev_channels()
      • _detect_thinking_effort()
      • _detect_skip_permissions_yn()
      • _detect_mcp_json_edit()
      • _detect_press_enter_continue()
      • _detect_file_trust()
      • _detect_file_trust_radio()
      • _detect_external_imports()
      • _detect_login_method()
      • _detect_theme_selection()
      • _detect_compose_pending_unsent()
      • _detect_done()
      • register_prompt()
      • detect_and_respond()
      • is_ready()
scitex-agent-container
  • Overview: module code

All modules for which code is available

  • scitex_agent_container.config
    • scitex_agent_container.config._host
    • scitex_agent_container.config._loaders
    • scitex_agent_container.config._provider_types
    • scitex_agent_container.config._proxy_types
    • scitex_agent_container.config._resolve
    • scitex_agent_container.config._types
    • scitex_agent_container.config._validation
  • scitex_agent_container.runtimes.prompts

© Copyright 2026, Yusuke Watanabe.

Built with Sphinx using a theme provided by Read the Docs.