hermes-agent/hermes_cli
2001Y 0a5d8a16fc feat(slack): support long app descriptions in the manifest generator
Add --long-description / --long-description-file to `hermes slack
manifest` so the generated app manifest can carry Slack's
display_information.long_description (175–4,000 characters), with
validation of the length bounds, mutual-exclusion with --slashes-only,
and UTF-8 file input. Also propagate the manifest command's exit status
through cmd_slack so validation failures reach the shell.

Squash of the two commits from PR #65256 — one commit per contributor
on this salvage branch.

Salvaged from #65256
2026-07-23 12:01:24 -07:00
..
dashboard_auth fix(dashboard-auth): harden the public native-authorize surface 2026-07-22 06:50:50 -07:00
proxy rip out brew + pip/PyPI wheel support (#68217) 2026-07-22 16:51:01 -04:00
subcommands feat(slack): support long app descriptions in the manifest generator 2026-07-23 12:01:24 -07:00
__init__.py chore: release v0.19.0 (2026.7.20) (#68175) 2026-07-20 11:35:21 -07:00
_early_recovery.py fix(update): stdlib-only early recovery before hermes_cli.main imports 2026-07-23 07:33:16 -07:00
_parser.py
…
_subprocess_compat.py fix(windows): hidden-console daemons — extend the parent-console fix to every detached spawn path (#70205) 2026-07-23 11:13:14 -07:00
active_sessions.py
…
auth.py fix(auth): count MoA preset slots as explicit provider configuration 2026-07-23 11:21:13 -07:00
auth_commands.py
…
azure_detect.py
…
backup.py
…
banner.py rip out brew + pip/PyPI wheel support (#68217) 2026-07-22 16:51:01 -04:00
blueprint_cmd.py
…
browser_connect.py
…
build_info.py
…
bundles.py
…
callbacks.py fix(clarify): one canonical timeout across CLI, TUI/desktop, and gateway (#69774) 2026-07-22 23:25:13 -05:00
checkpoints.py
…
claw.py
…
cli_agent_setup_mixin.py fix(timeline): persist typed display events (#69771) 2026-07-23 14:46:24 -04:00
cli_billing_mixin.py feat(cli): plan catalog on Free + plan= deep link + top-up/auto-refill copy split (#68689) 2026-07-22 08:11:09 +05:30
cli_commands_mixin.py fix(timeline): persist typed display events (#69771) 2026-07-23 14:46:24 -04:00
cli_output.py
…
clipboard.py
…
codex_models.py fix(codex): send ChatGPT-Account-Id on /models probes 2026-07-21 05:27:13 -07:00
codex_runtime_plugin_migration.py
…
codex_runtime_switch.py
…
colors.py
…
commands.py feat(status-bar): add /battery toggle for a color-coded battery read-out 2026-07-21 13:54:11 -05:00
completion.py
…
config.py fix(streaming): add Slack streaming=false default to match Discord 2026-07-23 12:01:24 -07:00
console_engine.py rip out brew + pip/PyPI wheel support (#68217) 2026-07-22 16:51:01 -04:00
container_boot.py
…
context_switch_guard.py fix(cli): honor custom_providers in preflight shrink warning 2026-07-22 21:17:21 -07:00
copilot_auth.py
…
credential_lifecycle.py
…
cron.py
…
curator.py
…
curses_ui.py Nous portal model pricing (#69579) 2026-07-22 16:47:06 -04:00
dashboard_register.py
…
debug.py
…
default_soul.py
…
dep_ensure.py
…
diagnostics_upload.py
…
dingtalk_auth.py
…
doctor.py refactor: dedupe check_info call + fix trailing whitespace in doctor 2026-07-23 17:32:38 +05:30
dump.py
…
env_loader.py fix(secrets): scope BWS-injected provider keys 2026-07-22 04:39:17 -07:00
fallback_cmd.py
…
fallback_config.py
…
gateway.py fix(windows): hidden-console daemons — extend the parent-console fix to every detached spawn path (#70205) 2026-07-23 11:13:14 -07:00
gateway_enroll.py
…
gateway_windows.py fix(windows): hidden-console daemons — extend the parent-console fix to every detached spawn path (#70205) 2026-07-23 11:13:14 -07:00
goals.py fix(goals): auto-pause goal loop on consecutive transport failures 2026-07-20 05:38:25 -07:00
gui_uninstall.py
…
hooks.py
…
input_sanitize.py
…
inventory.py Nous portal model pricing (#69579) 2026-07-22 16:47:06 -04:00
journey.py
…
kanban.py fix(kanban): harden delegated-child mutation boundary 2026-07-23 07:33:36 -07:00
kanban_db.py fix(kanban): stop decompose siblings sharing one worktree checkout 2026-07-23 09:27:13 -07:00
kanban_decompose.py
…
kanban_diagnostics.py
…
kanban_specify.py
…
kanban_swarm.py
…
logs.py
…
main.py feat(slack): support long app descriptions in the manifest generator 2026-07-23 12:01:24 -07:00
managed_scope.py
…
managed_uv.py
…
mcp_catalog.py
…
mcp_config.py
…
mcp_picker.py
…
mcp_security.py
…
mcp_startup.py fix(mcp): allow background discovery retry after a run that connected nothing 2026-07-21 12:43:27 -07:00
memory_oauth.py
…
memory_setup.py fix: use canonical _get_platform_tools resolver for memory tool status 2026-07-23 17:50:20 +05:30
middleware.py
…
migrate.py
…
moa_cmd.py
…
moa_config.py
…
model_catalog.py
…
model_cost_guard.py
…
model_normalize.py
…
model_setup_flows.py
…
model_switch.py fix: restore base_url rstrip, extract should_clear_context_pin helper 2026-07-22 11:19:37 +05:30
models.py fix(moa): route Copilot slots by target model 2026-07-23 08:26:57 -07:00
nous_account.py
…
nous_auth_keepalive.py
…
nous_billing.py fix(billing): rename user-facing "terminal billing" copy to Remote Spending (#68355) 2026-07-21 12:20:25 +05:30
nous_subscription.py
…
onepassword_secrets_cli.py feat(secrets): one-command token rotation + actionable startup errors for all secret sources (#68605) 2026-07-21 06:41:04 -07:00
oneshot.py fix: preserve named custom provider vision overrides 2026-07-23 17:57:33 +05:30
pairing.py
…
partial_compress.py
…
pets.py
…
platforms.py
…
plugins.py
…
plugins_cmd.py
…
portal_cli.py
…
profile_describer.py
…
profile_distribution.py
…
profiles.py
…
projects_cmd.py
…
projects_db.py feat(desktop): configure repository discovery (supersedes #67630) (#68642) 2026-07-21 10:09:31 -04:00
prompt_size.py
…
provider_catalog.py
…
providers.py fix(picker): scope exact-ID resolution to lossy alias collapses only 2026-07-20 10:17:57 -07:00
psutil_android.py
…
pt_input_extras.py
…
pty_bridge.py
…
pty_session.py
…
relaunch.py
…
route_identity.py fix: restore base_url rstrip, extract should_clear_context_pin helper 2026-07-22 11:19:37 +05:30
runtime_provider.py fix(moa): route every Copilot credential path by target 2026-07-23 08:26:57 -07:00
secret_prompt.py
…
secrets_cli.py fix(secrets): validate bitwarden status token 2026-07-22 03:20:09 -07:00
security_advisories.py
…
security_audit.py
…
security_audit_startup.py
…
send_cmd.py
…
service_manager.py
…
session_export.py
…
session_export_html.py
…
session_export_md.py
…
session_filters.py
…
session_listing.py
…
session_recap.py
…
setup.py fix(models): complete kimi-k3 rollout across Kimi-direct catalog surfaces 2026-07-20 08:47:55 -07:00
setup_whatsapp_cloud.py
…
skills_config.py
…
skills_hub.py
…
skin_cmd.py feat(themes): `hermes skin set` — deterministic one-color tweak, bg untouched 2026-07-21 21:00:43 -05:00
skin_engine.py feat(themes): dedicated code-syntax palette keys 2026-07-21 21:00:43 -05:00
slack_cli.py feat(slack): support long app descriptions in the manifest generator 2026-07-23 12:01:24 -07:00
sqlite_util.py
…
status.py
…
stdio.py
…
suggestions_cmd.py
…
telegram_managed_bot.py
…
timeouts.py
…
tips.py fix(cli): widen startup worktree pruning to all .worktrees/ trees and detect squash-merged work (#69831) 2026-07-23 07:33:07 -07:00
tools_config.py fix: resolve cua-driver across computer-use surfaces 2026-07-23 00:42:46 -05:00
toolset_validation.py
…
uninstall.py
…
urllib_security.py
…
voice.py
…
web_git.py
…
web_server.py fix(windows): hidden-console daemons — extend the parent-console fix to every detached spawn path (#70205) 2026-07-23 11:13:14 -07:00
webhook.py
…
win_pty_bridge.py
…
windows_ssh_runtime.py
…
write_approval_commands.py
…
xai_retirement.py
…