/** * Shared constants for the DeepSeek (via Hermes) Paperclip adapter. */ export const ADAPTER_TYPE = "deepseek_local"; export const ADAPTER_LABEL = "DeepSeek (via Hermes)"; /** Default Hermes CLI binary name. */ export const HERMES_CLI = "hermes"; /** Default profile directory used as HERMES_HOME if the agent does not override it. */ export const DEFAULT_PROFILE_HOME = "/home/chaim/.hermes/profiles/deepseek"; /** Default model — V4-Pro is the strongest DeepSeek model currently exposed. */ export const DEFAULT_MODEL = "deepseek-v4-pro"; /** DeepSeek profiles in this stack use Hermes' "custom" provider (user-defined in profile config.yaml). */ export const DEFAULT_PROVIDER = "custom"; /** Default timeout (seconds) for one CLI invocation. */ export const DEFAULT_TIMEOUT_SEC = 1800; /** Grace period (seconds) after SIGTERM before SIGKILL. */ export const DEFAULT_GRACE_SEC = 30; /** Models that DeepSeek's API currently exposes (verified via /v1/models). */ export const DEEPSEEK_MODELS = [ { id: "deepseek-v4-pro", label: "DeepSeek V4 Pro" }, { id: "deepseek-v4-flash", label: "DeepSeek V4 Flash" }, ]; /** Regex for extracting session_id from quiet-mode Hermes output. */ export const SESSION_ID_REGEX = /^session_id:\s*(\S+)/m; export const SESSION_ID_REGEX_LEGACY = /session[_ ](?:id|saved)[:\s]+([a-zA-Z0-9_-]+)/i; export const TOKEN_USAGE_REGEX = /tokens?[:\s]+(\d+)\s*(?:input|in)\b.*?(\d+)\s*(?:output|out)\b/i; export const COST_REGEX = /(?:cost|spent)[:\s]*\$?([\d.]+)/i;