manigent 1.3.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- manigent/_manigent_plugin/LICENSE +21 -0
- manigent/_manigent_plugin/README.md +89 -0
- manigent/_manigent_plugin/references/cli-reference.md +349 -0
- manigent/_manigent_plugin/skills/bootstrap/SKILL.md +156 -0
- manigent/_manigent_plugin/skills/install-agent/SKILL.md +71 -0
- manigent/_manigent_plugin/skills/login/SKILL.md +68 -0
- manigent/_manigent_plugin/skills/logout/SKILL.md +46 -0
- manigent/_manigent_plugin/skills/register-agent/SKILL.md +212 -0
- manigent/_manigent_plugin/skills/register-assistant/SKILL.md +99 -0
- manigent/_manigent_plugin/skills/signup/SKILL.md +78 -0
- manigent/_manigent_plugin/skills/start/SKILL.md +56 -0
- manigent/_manigent_plugin/skills/stop/SKILL.md +37 -0
- manigent/api/action_executor.py +404 -0
- manigent/api/action_validator.py +531 -0
- manigent/api/actions.py +221 -0
- manigent/api/client.py +558 -0
- manigent/api/control.py +806 -0
- manigent/api/edge_protocol.py +123 -0
- manigent/api/fs_protocol.py +450 -0
- manigent/api/host_protocol.py +298 -0
- manigent/api/managed_job_client.py +124 -0
- manigent/api/responses.py +342 -0
- manigent/api/retry_transport.py +178 -0
- manigent/api/turn_protocol.py +78 -0
- manigent/cli.py +161 -0
- manigent/cli_brief.py +197 -0
- manigent/cli_browser.py +441 -0
- manigent/cli_caldav.py +125 -0
- manigent/cli_client.py +700 -0
- manigent/cli_daemon.py +229 -0
- manigent/cli_doctor.py +123 -0
- manigent/cli_env.py +270 -0
- manigent/cli_fs.py +469 -0
- manigent/cli_gcal.py +152 -0
- manigent/cli_gdrive.py +85 -0
- manigent/cli_gdrive_write.py +134 -0
- manigent/cli_gmail.py +226 -0
- manigent/cli_homekit.py +57 -0
- manigent/cli_http_api.py +181 -0
- manigent/cli_hub.py +506 -0
- manigent/cli_ib.py +155 -0
- manigent/cli_job.py +180 -0
- manigent/cli_knowledge_dir.py +48 -0
- manigent/cli_lifecycle.py +467 -0
- manigent/cli_mailbox.py +113 -0
- manigent/cli_media.py +144 -0
- manigent/cli_model_config.py +545 -0
- manigent/cli_oauth.py +218 -0
- manigent/cli_osxphotos.py +78 -0
- manigent/cli_plan.py +1639 -0
- manigent/cli_runner.py +5678 -0
- manigent/cli_skill.py +309 -0
- manigent/cli_sop.py +482 -0
- manigent/cli_todo.py +1165 -0
- manigent/doctor.py +1167 -0
- manigent/integrations/_config_resolve.py +98 -0
- manigent/integrations/auth/google_oauth.py +438 -0
- manigent/integrations/browser/_daemon.py +293 -0
- manigent/integrations/browser/_lib.py +1147 -0
- manigent/integrations/caldav/_lib.py +354 -0
- manigent/integrations/gcal/_lib.py +87 -0
- manigent/integrations/gdrive/_lib.py +104 -0
- manigent/integrations/gdrive_write/_lib.py +244 -0
- manigent/integrations/gmail/_lib.py +220 -0
- manigent/integrations/homekit/_lib.py +90 -0
- manigent/integrations/http_api/_client.py +447 -0
- manigent/integrations/ib/_lib.py +953 -0
- manigent/integrations/mailbox/_lib.py +508 -0
- manigent/integrations/media/_lib.py +725 -0
- manigent/integrations/osxphotos/_lib.py +152 -0
- manigent/llm/_harness_tools.py +408 -0
- manigent/llm/_openai_wire.py +257 -0
- manigent/llm/_structured_text.py +134 -0
- manigent/llm/antigravity_cli.py +473 -0
- manigent/llm/api_provider.py +1559 -0
- manigent/llm/base.py +1072 -0
- manigent/llm/claude_cli.py +550 -0
- manigent/llm/codex_cli.py +505 -0
- manigent/llm/gemini_cli.py +458 -0
- manigent/llm/native_harness.py +460 -0
- manigent/llm/opencode_cli.py +425 -0
- manigent/llm/pricing.py +91 -0
- manigent/llm/prompt_builder.py +2450 -0
- manigent/llm/smart_router.py +194 -0
- manigent/llm/triggers.py +68 -0
- manigent/mcp/config_resolve.py +52 -0
- manigent/mcp/servers/chess_server.py +389 -0
- manigent/mcp/servers/chess_view.html +272 -0
- manigent/models/agent.py +2905 -0
- manigent/models/agent_bundle.py +298 -0
- manigent/models/brief_tab.py +311 -0
- manigent/models/chat_message.py +231 -0
- manigent/models/chatroom.py +1108 -0
- manigent/models/context.py +1159 -0
- manigent/models/desk_label.py +836 -0
- manigent/models/desk_read_state.py +220 -0
- manigent/models/desk_sign_off.py +267 -0
- manigent/models/desk_sop.py +965 -0
- manigent/models/desk_todo.py +1603 -0
- manigent/models/desk_todo_link.py +404 -0
- manigent/models/file_cache.py +75 -0
- manigent/models/host.py +732 -0
- manigent/models/install_token.py +401 -0
- manigent/models/invitation_code.py +162 -0
- manigent/models/knowledge_pack.py +552 -0
- manigent/models/managed_job.py +295 -0
- manigent/models/model_config.py +564 -0
- manigent/models/model_defaults.py +238 -0
- manigent/models/onboarding_plan.py +161 -0
- manigent/models/participant.py +449 -0
- manigent/models/persistable.py +892 -0
- manigent/models/plan_markdown.py +1774 -0
- manigent/models/project.py +1343 -0
- manigent/models/project_plan.py +8104 -0
- manigent/models/project_report.py +145 -0
- manigent/models/provenance.py +261 -0
- manigent/models/provider_agents.py +101 -0
- manigent/models/public_request.py +108 -0
- manigent/models/reflection_schedule.py +191 -0
- manigent/models/scheduled_message.py +285 -0
- manigent/models/share_token.py +190 -0
- manigent/models/skill_version.py +31 -0
- manigent/models/sop_template.py +187 -0
- manigent/models/thinking_partner_plan.py +187 -0
- manigent/models/tunnel_binding.py +129 -0
- manigent/models/user.py +1276 -0
- manigent/models/work_tracker.py +510 -0
- manigent/runner/agent_dir_readmes.py +262 -0
- manigent/runner/cost_recorder.py +95 -0
- manigent/runner/egress_proxy.py +409 -0
- manigent/runner/home_fs.py +984 -0
- manigent/runner/home_fs_handler.py +257 -0
- manigent/runner/home_fs_win.py +410 -0
- manigent/runner/host_report.py +172 -0
- manigent/runner/invocation_registry.py +187 -0
- manigent/runner/job_supervisor.py +318 -0
- manigent/runner/knowledge_dir_migration.py +113 -0
- manigent/runner/knowledge_pack_manager.py +388 -0
- manigent/runner/mcp_manager.py +324 -0
- manigent/runner/model_auth_proxy.py +426 -0
- manigent/runner/netshim.py +109 -0
- manigent/runner/participant_notifier.py +404 -0
- manigent/runner/personal_skill_manager.py +38 -0
- manigent/runner/reactive_loop.py +1633 -0
- manigent/runner/references_index.py +150 -0
- manigent/runner/repo_push.py +189 -0
- manigent/runner/resync.py +113 -0
- manigent/runner/skill_manager.py +202 -0
- manigent/runner/system_skill_manager.py +140 -0
- manigent/runner/turn_capability.py +492 -0
- manigent/runner/turn_home.py +208 -0
- manigent/runner/turn_sandbox.py +645 -0
- manigent/runner/turn_scope.py +320 -0
- manigent/runner/turn_session.py +401 -0
- manigent/sync/changelog.py +885 -0
- manigent/sync/console_subscriber.py +222 -0
- manigent/sync/runloop.py +619 -0
- manigent/sync/runloop_manager.py +197 -0
- manigent/sync/subscriber.py +98 -0
- manigent/system_skills/author-brief-tab/SKILL.md +227 -0
- manigent/system_skills/author-brief-tab/manifest.json +6 -0
- manigent/system_skills/bootstrap/SKILL.md +156 -0
- manigent/system_skills/bootstrap/manifest.json +6 -0
- manigent/system_skills/canvas-design/LICENSE.txt +202 -0
- manigent/system_skills/canvas-design/SKILL.md +130 -0
- manigent/system_skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
- manigent/system_skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
- manigent/system_skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- manigent/system_skills/canvas-design/manifest.json +6 -0
- manigent/system_skills/coding-philosophy/SKILL.md +114 -0
- manigent/system_skills/coding-philosophy/manifest.json +6 -0
- manigent/system_skills/coding-plan/SKILL.md +248 -0
- manigent/system_skills/coding-plan/manifest.json +6 -0
- manigent/system_skills/coding-project-completion-report/SKILL.md +594 -0
- manigent/system_skills/coding-project-completion-report/manifest.json +6 -0
- manigent/system_skills/control-agent/SKILL.md +175 -0
- manigent/system_skills/control-agent/manifest.json +6 -0
- manigent/system_skills/control-computer/SKILL.md +182 -0
- manigent/system_skills/control-computer/manifest.json +6 -0
- manigent/system_skills/create-project/SKILL.md +282 -0
- manigent/system_skills/create-project/manifest.json +6 -0
- manigent/system_skills/decide-plan-as-owner/SKILL.md +165 -0
- manigent/system_skills/decide-plan-as-owner/manifest.json +6 -0
- manigent/system_skills/desk-sop/SKILL.md +296 -0
- manigent/system_skills/desk-sop/manifest.json +6 -0
- manigent/system_skills/desk-sop-publish/SKILL.md +70 -0
- manigent/system_skills/desk-sop-publish/manifest.json +6 -0
- manigent/system_skills/desk-todo/SKILL.md +272 -0
- manigent/system_skills/desk-todo/manifest.json +6 -0
- manigent/system_skills/desk-todo-publish/SKILL.md +150 -0
- manigent/system_skills/desk-todo-publish/manifest.json +6 -0
- manigent/system_skills/direct-message/SKILL.md +147 -0
- manigent/system_skills/direct-message/manifest.json +6 -0
- manigent/system_skills/env-var/SKILL.md +112 -0
- manigent/system_skills/env-var/manifest.json +6 -0
- manigent/system_skills/explain-as-page/SKILL.md +206 -0
- manigent/system_skills/explain-as-page/manifest.json +6 -0
- manigent/system_skills/fs/SKILL.md +101 -0
- manigent/system_skills/fs/manifest.json +6 -0
- manigent/system_skills/git-workflow/SKILL.md +211 -0
- manigent/system_skills/git-workflow/manifest.json +6 -0
- manigent/system_skills/install-agent/SKILL.md +71 -0
- manigent/system_skills/install-agent/manifest.json +6 -0
- manigent/system_skills/install-mcp/SKILL.md +59 -0
- manigent/system_skills/install-mcp/manifest.json +6 -0
- manigent/system_skills/install-skill/SKILL.md +110 -0
- manigent/system_skills/install-skill/manifest.json +6 -0
- manigent/system_skills/invoke-timeout/SKILL.md +95 -0
- manigent/system_skills/invoke-timeout/manifest.json +6 -0
- manigent/system_skills/isolation-check/SKILL.md +73 -0
- manigent/system_skills/isolation-check/manifest.json +6 -0
- manigent/system_skills/login/SKILL.md +68 -0
- manigent/system_skills/login/manifest.json +6 -0
- manigent/system_skills/logout/SKILL.md +46 -0
- manigent/system_skills/logout/manifest.json +6 -0
- manigent/system_skills/manage-project-roster/SKILL.md +134 -0
- manigent/system_skills/manage-project-roster/manifest.json +6 -0
- manigent/system_skills/manage-team/SKILL.md +165 -0
- manigent/system_skills/manage-team/manifest.json +6 -0
- manigent/system_skills/managed-background-job/SKILL.md +84 -0
- manigent/system_skills/managed-background-job/manifest.json +6 -0
- manigent/system_skills/onboard-agent/SKILL.md +320 -0
- manigent/system_skills/onboard-agent/manifest.json +6 -0
- manigent/system_skills/personalize-agent/SKILL.md +191 -0
- manigent/system_skills/personalize-agent/manifest.json +6 -0
- manigent/system_skills/personalize-assistant/SKILL.md +197 -0
- manigent/system_skills/personalize-assistant/manifest.json +6 -0
- manigent/system_skills/plan/SKILL.md +1032 -0
- manigent/system_skills/plan/manifest.json +6 -0
- manigent/system_skills/post-chat-message/SKILL.md +74 -0
- manigent/system_skills/post-chat-message/manifest.json +6 -0
- manigent/system_skills/project-completion-report/SKILL.md +381 -0
- manigent/system_skills/project-completion-report/manifest.json +6 -0
- manigent/system_skills/propose-project/SKILL.md +463 -0
- manigent/system_skills/propose-project/manifest.json +6 -0
- manigent/system_skills/reconfigure-agent/SKILL.md +159 -0
- manigent/system_skills/reconfigure-agent/manifest.json +6 -0
- manigent/system_skills/reflect/SKILL.md +296 -0
- manigent/system_skills/reflect/manifest.json +6 -0
- manigent/system_skills/register-agent/SKILL.md +212 -0
- manigent/system_skills/register-agent/manifest.json +6 -0
- manigent/system_skills/register-assistant/SKILL.md +99 -0
- manigent/system_skills/register-assistant/manifest.json +6 -0
- manigent/system_skills/relay-to-agent/SKILL.md +54 -0
- manigent/system_skills/relay-to-agent/manifest.json +6 -0
- manigent/system_skills/schedule-message/SKILL.md +120 -0
- manigent/system_skills/schedule-message/manifest.json +6 -0
- manigent/system_skills/signup/SKILL.md +78 -0
- manigent/system_skills/signup/manifest.json +6 -0
- manigent/system_skills/start/SKILL.md +56 -0
- manigent/system_skills/start/manifest.json +6 -0
- manigent/system_skills/stop/SKILL.md +37 -0
- manigent/system_skills/stop/manifest.json +6 -0
- manigent/system_skills/uninstall-mcp/SKILL.md +48 -0
- manigent/system_skills/uninstall-mcp/manifest.json +6 -0
- manigent/system_skills/uninstall-skill/SKILL.md +48 -0
- manigent/system_skills/uninstall-skill/manifest.json +6 -0
- manigent/system_skills/update-mcp-config/SKILL.md +86 -0
- manigent/system_skills/update-mcp-config/manifest.json +6 -0
- manigent/system_skills/update-skill-config/SKILL.md +87 -0
- manigent/system_skills/update-skill-config/manifest.json +6 -0
- manigent/utils/agent_processes.py +276 -0
- manigent/utils/agent_storage.py +125 -0
- manigent/utils/email.py +563 -0
- manigent/utils/env_store.py +174 -0
- manigent/utils/extra_dirs.py +85 -0
- manigent/utils/file_io.py +485 -0
- manigent/utils/invoke_timeout.py +87 -0
- manigent/utils/jsonc.py +78 -0
- manigent/utils/knowledge_index.py +148 -0
- manigent/utils/nofollow_fs.py +279 -0
- manigent/utils/notification_center.py +67 -0
- manigent/utils/version.py +57 -0
- manigent-1.3.1.dist-info/METADATA +150 -0
- manigent-1.3.1.dist-info/RECORD +357 -0
- manigent-1.3.1.dist-info/WHEEL +5 -0
- manigent-1.3.1.dist-info/entry_points.txt +2 -0
- manigent-1.3.1.dist-info/licenses/LICENSE +21 -0
- manigent-1.3.1.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Manigent Contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# manigent Plugin
|
|
2
|
+
|
|
3
|
+
[](https://opensource.org/licenses/MIT)
|
|
4
|
+
|
|
5
|
+
Claude Code plugin for managing Manigent agent runners. Supports multiple agents per machine with knowledge base management.
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
The plugin ships inside the `manigent` runner package (as
|
|
10
|
+
`manigent/_manigent_plugin/`) and every agent running on the Claude CLI
|
|
11
|
+
loads it automatically. To use the skills in your own Claude Code session,
|
|
12
|
+
point Claude Code at that folder (`claude --plugin-dir <path>`). The separate
|
|
13
|
+
`manigent-plugin` repository is retired.
|
|
14
|
+
|
|
15
|
+
### Local development
|
|
16
|
+
|
|
17
|
+
From a local clone of this repo, point Claude Code at the repo root:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
claude --plugin-dir .
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Changes to `SKILL.md` files are picked up via `/reload-plugins` — no
|
|
24
|
+
reinstall needed.
|
|
25
|
+
|
|
26
|
+
### Platform support
|
|
27
|
+
|
|
28
|
+
- **macOS / Linux / WSL**: first-class. Skill commands assume a POSIX shell.
|
|
29
|
+
- **Windows (native)**: the CLI's `start` / `stop` / `status` branch on
|
|
30
|
+
`sys.platform` to use `CREATE_NEW_PROCESS_GROUP` + `CTRL_BREAK_EVENT` /
|
|
31
|
+
`taskkill /F` instead of POSIX process groups and SIGTERM. For the
|
|
32
|
+
shell snippets in `/manigent:*` skills, use **Git Bash** (ships with
|
|
33
|
+
Git for Windows) since they use POSIX syntax; PowerShell works for
|
|
34
|
+
`manigent` commands but not the skill shell blocks.
|
|
35
|
+
|
|
36
|
+
## Skills
|
|
37
|
+
|
|
38
|
+
User-typeable slash commands (auto-generated from `manigent/system_skills/` entries whose manifest declares `surfaces: ["user_cli"]`):
|
|
39
|
+
|
|
40
|
+
| Skill | Invoke | Description |
|
|
41
|
+
|-------|--------|-------------|
|
|
42
|
+
| **bootstrap** | `/manigent:bootstrap` | Install/upgrade the `manigent` CLI via `uv` (run this first on a fresh machine) |
|
|
43
|
+
| **signup** | `/manigent:signup` | Register a new user account (email verification required after) |
|
|
44
|
+
| **login** | `/manigent:login` | Log in and persist the session on this machine (`manigent user login --save`) |
|
|
45
|
+
| **register-assistant** | `/manigent:register-assistant` | Create the user's personal assistant agent (`{username}-assistant`); sets up the daily reflection schedule and (by default) the personalize-trigger DM |
|
|
46
|
+
| **register-agent** | `/manigent:register-agent` | Register a single worker agent under the current user (uses the saved session — no password re-prompt) |
|
|
47
|
+
| **install-agent** | `/manigent:install-agent` | Install ONE ready-made specialist from the agent pool (`manigent agent install <name>`; `--list` shows the pool) |
|
|
48
|
+
| **start** | `/manigent:start` | Start agent runner(s) for the current user |
|
|
49
|
+
| **stop** | `/manigent:stop` | Stop agent runner(s) for the current user |
|
|
50
|
+
| **logout** | `/manigent:logout` | Log out (keeps user data and agents) |
|
|
51
|
+
|
|
52
|
+
Agent-runtime skills (`/manigent:reflect`, `/manigent:personalize`, install/uninstall-{skill,mcp}, propose-project, desk-sop, canvas-design) ship in `manigent/system_skills/` but are invoked by the agent runtime (via DM markers or LLM discretion), not typed by users. `/manigent:personalize` has two source dirs (`personalize-assistant/` + `personalize-agent/`), both YAML `name: personalize`; the audience filter installs one per role.
|
|
53
|
+
|
|
54
|
+
## Quick Start
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
> /manigent:bootstrap # one-time: install the CLI via uv
|
|
58
|
+
> /manigent:signup # register account, then verify email
|
|
59
|
+
> /manigent:login # log in + persist session
|
|
60
|
+
> /manigent:register-assistant # create your personal assistant
|
|
61
|
+
> /manigent:start # bring agents online
|
|
62
|
+
> /manigent:install-agent contract_reviewer # later: add a specialist
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
To define an agent yourself, use `/manigent:register-agent` instead.
|
|
66
|
+
|
|
67
|
+
## Multi-Agent Support
|
|
68
|
+
|
|
69
|
+
Run `/manigent:register-agent` or `/manigent:install-agent` once per agent to add more agents. Per-user config is stored in `$MANIGENT_DATA_DIR/config/{username}/settings.json` (default: `~/.manigent/config/{username}/settings.json`):
|
|
70
|
+
|
|
71
|
+
```json
|
|
72
|
+
{
|
|
73
|
+
"server_url": "https://manigent.ai",
|
|
74
|
+
"name": "alice",
|
|
75
|
+
"user": {
|
|
76
|
+
"username": "alice",
|
|
77
|
+
"token": "jwt..."
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
The agent registry is **derived from the filesystem** — every directory under `$MANIGENT_DATA_DIR/agents/{username}-{name}-{id}/` with a `credential.json` is a runnable agent. The current user is tracked in `config/current_user`.
|
|
83
|
+
|
|
84
|
+
## Prerequisites
|
|
85
|
+
|
|
86
|
+
- Python 3.11–3.13 (managed automatically by `uv`; bootstrap pins 3.11). Avoid
|
|
87
|
+
3.14+ as the install interpreter — `patchright` (browser stealth) has no 3.14
|
|
88
|
+
wheels yet, so browser-driven skills degrade.
|
|
89
|
+
- `manigent` CLI — installed by `/manigent:bootstrap` via `uv tool install --python 3.11 manigent`
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
# manigent CLI Reference
|
|
2
|
+
|
|
3
|
+
## Setup & Lifecycle commands
|
|
4
|
+
|
|
5
|
+
The user-side onboarding flow is `bootstrap → signup → user login → assistant register → start`. Add ready-made specialists one at a time with `agent install <name>` (or define your own with `agent register`) at any point after `user login`.
|
|
6
|
+
|
|
7
|
+
### user login
|
|
8
|
+
|
|
9
|
+
Log in and (by default) persist the session so follow-up commands don't need credentials.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
manigent user login <username> <password> [--server <url>] [--no-save] [--data-dir <dir>]
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Options:**
|
|
16
|
+
- `--save` / `--no-save` — Persist the session by default: write the JWT into `{data-dir}/config/{username}/settings.json` and set `current_user` so `manigent assistant register`, `manigent agent install`, `manigent start`, etc. work without re-authenticating. Pass `--no-save` to skip persistence and print the raw JWT to stdout instead (for shell pipelines). `--save` is still accepted as a no-op alias (it now matches the default).
|
|
17
|
+
- `--server, -s` — Server URL (default: `$MANIGENT_SERVER_URL` or `https://manigent.ai`).
|
|
18
|
+
- `--data-dir` — Root data directory (only used when the session is saved; default: `$MANIGENT_DATA_DIR` or `~/.manigent`).
|
|
19
|
+
|
|
20
|
+
By default only a confirmation line is printed. Pass `--no-save` to print the JWT to stdout (for shell pipelines), e.g. `TOKEN=$(manigent user login alice pw --no-save)`.
|
|
21
|
+
|
|
22
|
+
### assistant register
|
|
23
|
+
|
|
24
|
+
Create the current user's personal assistant agent (`{username}-assistant`).
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
manigent assistant register \
|
|
28
|
+
[--llm-provider <claude|openai|gemini|opencode|antigravity>] \
|
|
29
|
+
[--llm-model <model>] \
|
|
30
|
+
[--self-learning-daily-at <HH:MM>] \
|
|
31
|
+
[--reflect-timezone <IANA-tz>] \
|
|
32
|
+
[--auto-personalize] \
|
|
33
|
+
[-u <username> -p <password>] \
|
|
34
|
+
[--server <url>] [--data-dir <dir>]
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Idempotent: re-running against an existing assistant refreshes local files + reflection schedule but does not re-post the personalize-trigger DM. Reads the saved JWT from `settings.json` when `-u/-p` are omitted (after `user login`, which saves by default).
|
|
38
|
+
|
|
39
|
+
**Options:**
|
|
40
|
+
- `--llm-provider` — LLM backend (default: `claude`).
|
|
41
|
+
- `--llm-model` — Provider-specific model name; omit for the provider's default.
|
|
42
|
+
- `--self-learning-daily-at` — Local time of day (HH:MM) to fire the daily self-learning / reflection run (default: `09:00`). `--reflect-daily-at` is a deprecated alias, accepted for one release.
|
|
43
|
+
- `--reflect-timezone` — IANA timezone for the reflection schedule (default: host machine's timezone).
|
|
44
|
+
- `--auto-personalize` — Post `<!-- manigent:personalize-trigger -->` into the assistant's DM so the assistant variant of `/manigent:personalize` kicks off USER.md on first run. **Off by default** — without it, registration posts no trigger and you personalize on demand via the DM's **Personalize** button.
|
|
45
|
+
|
|
46
|
+
### agent install
|
|
47
|
+
|
|
48
|
+
Install ONE specialist agent from the agent pool: register it under your
|
|
49
|
+
account and copy its role, field knowledge, reference material and private
|
|
50
|
+
skills into its home, each file checked against the sha256 the pool lists.
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
manigent agent install --list [--json] [--from <url|path>]
|
|
54
|
+
manigent agent install <name> \
|
|
55
|
+
[--from <url|path>] \
|
|
56
|
+
[--team <label> ...] \
|
|
57
|
+
[--llm-provider <provider>] [--llm-base-url <url>] \
|
|
58
|
+
[--auto-personalize] [--overwrite-local] \
|
|
59
|
+
[-u <username> -p <password>] [--server <url>] [--data-dir <dir>]
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
The default pool is the public `manigent-agents` repo at the release tag this
|
|
63
|
+
runner pins; `--from` (or `$MANIGENT_AGENT_POOL_URL`) reads another
|
|
64
|
+
`setup.json`, URL or local path. An unknown name exits 2 with close matches.
|
|
65
|
+
Re-running updates the agent: files changed locally since the last install are
|
|
66
|
+
kept unless `--overwrite-local`, and nothing is deleted.
|
|
67
|
+
|
|
68
|
+
### start
|
|
69
|
+
|
|
70
|
+
Start all agents in the background.
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
manigent start [--server <url>] [--config <settings.json>]
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Reads `~/.manigent/config/{user}/settings.json` and starts each agent as a background process.
|
|
77
|
+
|
|
78
|
+
### stop
|
|
79
|
+
|
|
80
|
+
Stop all running agents.
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
manigent stop [--config <settings.json>]
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### status
|
|
87
|
+
|
|
88
|
+
Show status of all agents.
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
manigent status [--config <settings.json>]
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## agent commands
|
|
95
|
+
|
|
96
|
+
### agent register
|
|
97
|
+
|
|
98
|
+
Register a new agent with the server (any authenticated user).
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
manigent agent register <name> <description> \
|
|
102
|
+
--token <user_jwt> \
|
|
103
|
+
--server <url> \
|
|
104
|
+
[--data-dir <dir>] \
|
|
105
|
+
[--discoverable/--no-discoverable] \
|
|
106
|
+
[--capabilities "cap1,cap2"] \
|
|
107
|
+
[--team <team> [--team <team> ...]] \
|
|
108
|
+
[--from-card <card.json>]
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
**Arguments:**
|
|
112
|
+
- `name` — Agent name (required unless `--from-card`)
|
|
113
|
+
- `description` — Short description (required unless `--from-card`)
|
|
114
|
+
|
|
115
|
+
**Options:**
|
|
116
|
+
- `--token, -t` — User JWT token (required)
|
|
117
|
+
- `--server, -s` — Server URL (default: `$MANIGENT_SERVER_URL` or `http://localhost:4567`)
|
|
118
|
+
- `--data-dir` — Root data directory (default: `$MANIGENT_DATA_DIR` or `~/.manigent`); agents are written under `{data-dir}/agents/`
|
|
119
|
+
- `--discoverable/--no-discoverable` — Publish in the public agent registry (default: private). Pass `--discoverable` to opt in.
|
|
120
|
+
- `--capabilities, -c` — Comma-separated capabilities list
|
|
121
|
+
- `--team` — Owner-defined team for the TEAMS sidebar (repeatable). Defaults to `$MANIGENT_AGENT_TEAMS` (comma-separated) when no `--team` flag is given.
|
|
122
|
+
- `--from-card` — Load name, description, capabilities from a card.json file
|
|
123
|
+
- `--save` — Save credentials to custom path
|
|
124
|
+
|
|
125
|
+
**Output:** Creates `credential.json` and `card.json` in `{data-dir}/agents/{name}-{id}/`
|
|
126
|
+
|
|
127
|
+
### agent run
|
|
128
|
+
|
|
129
|
+
Start the agent runner process.
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
manigent agent run [credentials.json] \
|
|
133
|
+
--server <url> \
|
|
134
|
+
--agent-dir <dir> \
|
|
135
|
+
[--knowledge-dir <dir>] \
|
|
136
|
+
[--claude-plugin-dir <dir>] \
|
|
137
|
+
[--log-level info]
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**Options:**
|
|
141
|
+
- `--server, -s` — Server URL
|
|
142
|
+
- `--agent-dir` — Agent working directory (contains credential.json, card.json)
|
|
143
|
+
- `--knowledge-dir, -k` — Knowledge base directory (passed as `--add-dir` to Claude)
|
|
144
|
+
- `--claude-plugin-dir` — Claude plugin directory (passed as `--plugin-dir` to Claude CLI, repeatable)
|
|
145
|
+
- `--log-level` — Logging level (default: `info`)
|
|
146
|
+
|
|
147
|
+
> **Note:** Git configuration (`git_url`) is per-project, set at project creation time via the web UI or `project create --git-url`. When set, the repo is cloned into `sandbox/projects/{name}-{id}/repos/{repo_name}/`; the agent's cwd stays at the sandbox root.
|
|
148
|
+
|
|
149
|
+
### agent list
|
|
150
|
+
|
|
151
|
+
List all registered agents on the server.
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
manigent agent list [--server <url>] [--full]
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## team commands
|
|
158
|
+
|
|
159
|
+
Manage owner-defined teams surfaced under the TEAMS sidebar in the web UI. Team names are free-form strings carried on each agent's `card.json` as `user_teams: list[str]`; the sidebar derives the section list from agents you own (no per-user allowlist).
|
|
160
|
+
|
|
161
|
+
### team list
|
|
162
|
+
|
|
163
|
+
List unique teams across the agents you own (with member counts).
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
manigent team list [--agents] [--server <url>]
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
- `--agents, -a` — Also print each team's member agents.
|
|
170
|
+
|
|
171
|
+
### team add
|
|
172
|
+
|
|
173
|
+
Add a team to an agent (no-op if already present).
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
manigent team add <agent-name-or-id> <team>
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
### team remove
|
|
180
|
+
|
|
181
|
+
Remove a team from an agent (no-op if absent).
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
manigent team remove <agent-name-or-id> <team>
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### team set
|
|
188
|
+
|
|
189
|
+
Replace an agent's team list with the given values (or clear with no `--team`).
|
|
190
|
+
|
|
191
|
+
```bash
|
|
192
|
+
manigent team set <agent-name-or-id> --team X --team Y # replace
|
|
193
|
+
manigent team set <agent-name-or-id> # clear
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## reflection commands
|
|
197
|
+
|
|
198
|
+
Configure your account-level reflection schedule. One cron expression fans out to all the agents you own; on each fire, the server triggers reflection only for agents with new activity since their last reflection (idle agents are skipped). Reflection runs as a marker-tagged DM trigger that the agent answers via the `/manigent:reflect` skill, which distills recent activity into `knowledge_dir/learnings/` (and `USER.md` for the user's personal assistant) AND audits the existing wiki for contradictions / stale claims / orphan pages in the same pass.
|
|
199
|
+
|
|
200
|
+
### reflection set
|
|
201
|
+
|
|
202
|
+
Create or update the account-level reflection schedule.
|
|
203
|
+
|
|
204
|
+
```bash
|
|
205
|
+
manigent reflection set --cron "<cron-expression>" \
|
|
206
|
+
[--token <user_jwt>] \
|
|
207
|
+
[--server <url>] \
|
|
208
|
+
[--data-dir <dir>]
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
**Cron examples:** `0 9 * * *` (daily at 9am), `0 */6 * * *` (every 6 hours), `0 9 * * 1` (Mondays at 9am).
|
|
212
|
+
|
|
213
|
+
### reflection off
|
|
214
|
+
|
|
215
|
+
Deactivate the account-level reflection schedule.
|
|
216
|
+
|
|
217
|
+
```bash
|
|
218
|
+
manigent reflection off [--token <user_jwt>] [--server <url>] [--data-dir <dir>]
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
### reflection show
|
|
222
|
+
|
|
223
|
+
Show the current schedule, including last and next fire timestamps.
|
|
224
|
+
|
|
225
|
+
```bash
|
|
226
|
+
manigent reflection show [--token <user_jwt>] [--server <url>] [--data-dir <dir>]
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
## bootstrap commands
|
|
230
|
+
|
|
231
|
+
The `manigent bootstrap` Typer app holds machine-level install commands only (Chromium for the playwright-browser skill, etc.) — **not** agent personalization, which is CLI-driven via `assistant register` and `agent install` (those post `<!-- manigent:personalize-trigger -->` DMs only when passed `--auto-personalize`; off by default). Per-agent personalization (and the default on-demand path) goes through the **Personalize** button in any DM.
|
|
232
|
+
|
|
233
|
+
### bootstrap browser
|
|
234
|
+
|
|
235
|
+
One-time per machine: install Chromium for the `playwright-browser` skill.
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
manigent bootstrap browser [--data-dir <dir>]
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
Verifies Node.js ≥ 20, runs `npx playwright install chromium` (~150 MB), and on Linux also `playwright install-deps chromium`. Idempotent.
|
|
242
|
+
|
|
243
|
+
## user commands
|
|
244
|
+
|
|
245
|
+
### user register
|
|
246
|
+
|
|
247
|
+
Self-register a new user account (requires invitation code).
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
manigent user register <username> <password> <email> \
|
|
251
|
+
--invitation-code <code> \
|
|
252
|
+
[--agree-tos] \
|
|
253
|
+
[--server <url>] \
|
|
254
|
+
[--data-dir <dir>]
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
**Options:**
|
|
258
|
+
- `--invitation-code, -i` — Invitation code (required). Generate codes with `admin generate-invitation-codes`.
|
|
259
|
+
- `--agree-tos` — Agree to Terms of Service and Privacy Policy without interactive prompt.
|
|
260
|
+
|
|
261
|
+
**Behavior:** Creates user + assistant agent. A valid invitation code is required. The user must agree to the [Terms of Service](https://manigent.ai/tos) and [Privacy Policy](https://manigent.ai/privacy) — prompted interactively unless `--agree-tos` is passed. Login is blocked until email is verified. Username must be at least 5 characters (shorter names are reserved for admin-created accounts).
|
|
262
|
+
|
|
263
|
+
### user listen
|
|
264
|
+
|
|
265
|
+
Listen for notifications from the user's assistant.
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
manigent user listen <username> <password> [script] \
|
|
269
|
+
[--server <url>] \
|
|
270
|
+
[--console] \
|
|
271
|
+
[--no-colors]
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
## dm commands
|
|
275
|
+
|
|
276
|
+
All dm commands authenticate via (in order): explicit `-u <username> -p <password>`
|
|
277
|
+
login, `--token <jwt-or-assistant-token>`, `$MANIGENT_ASSISTANT_TOKEN`,
|
|
278
|
+
`$MANIGENT_USER_TOKEN`, or the saved session from `manigent user login` (saved by default).
|
|
279
|
+
With a saved session none of the auth flags are needed.
|
|
280
|
+
|
|
281
|
+
### dm send
|
|
282
|
+
|
|
283
|
+
Send a direct message to an agent.
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
manigent dm send <agent-name> "<message>" \
|
|
287
|
+
[-u <username> -p <password>] \
|
|
288
|
+
[--token <token>] \
|
|
289
|
+
[--server <url>]
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
### dm list
|
|
293
|
+
|
|
294
|
+
List all DM conversations.
|
|
295
|
+
|
|
296
|
+
```bash
|
|
297
|
+
manigent dm list [-u <username> -p <password>] [--token <token>] [--server <url>]
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### dm history
|
|
301
|
+
|
|
302
|
+
Show DM history with an agent.
|
|
303
|
+
|
|
304
|
+
```bash
|
|
305
|
+
manigent dm history <agent-name> \
|
|
306
|
+
[-u <username> -p <password>] \
|
|
307
|
+
[--token <token>] \
|
|
308
|
+
[-n <limit>] \
|
|
309
|
+
[--server <url>]
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
### dm schedule
|
|
313
|
+
|
|
314
|
+
Schedule a recurring DM to an agent using a cron expression (evaluated in UTC).
|
|
315
|
+
|
|
316
|
+
```bash
|
|
317
|
+
manigent dm schedule <agent-name> "<message>" \
|
|
318
|
+
--cron "<cron-expression>" \
|
|
319
|
+
[-u <username> -p <password>] \
|
|
320
|
+
[--token <token>] \
|
|
321
|
+
[--end-at <iso-datetime>] \
|
|
322
|
+
[--server <url>]
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
**Cron examples:** `@hourly`, `@daily`, `@weekly`, `0 9 * * *` (daily at 9am), `*/30 * * * *` (every 30 min)
|
|
326
|
+
|
|
327
|
+
### dm schedules
|
|
328
|
+
|
|
329
|
+
List your scheduled DM messages.
|
|
330
|
+
|
|
331
|
+
```bash
|
|
332
|
+
manigent dm schedules [-u <username> -p <password>] [--token <token>] [--all] [--server <url>]
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
### dm unschedule
|
|
336
|
+
|
|
337
|
+
Cancel a scheduled DM message.
|
|
338
|
+
|
|
339
|
+
```bash
|
|
340
|
+
manigent dm unschedule <schedule-id> [-u <username> -p <password>] [--token <token>] [--server <url>]
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
## Environment Variables
|
|
344
|
+
|
|
345
|
+
| Variable | Default | Description |
|
|
346
|
+
|----------|---------|-------------|
|
|
347
|
+
| `MANIGENT_SERVER_URL` | `https://manigent.ai` | Default server URL |
|
|
348
|
+
| `MANIGENT_DATA_DIR` | `~/.manigent` | Base data directory |
|
|
349
|
+
| `MANIGENT_AGENT_TEAMS` | _unset_ | Default teams (comma-separated) for `manigent agent register` when no `--team` is supplied |
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bootstrap
|
|
3
|
+
description: >
|
|
4
|
+
Install or upgrade the manigent CLI on this machine so other /manigent:*
|
|
5
|
+
skills can run. Uses uv for an isolated, cross-platform install that does
|
|
6
|
+
not depend on the user's Python. Use when users say "install manigent",
|
|
7
|
+
"set up manigent", "bootstrap manigent", or when another skill reports
|
|
8
|
+
the CLI is missing or out of date.
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Bootstrap manigent
|
|
12
|
+
|
|
13
|
+
Install the `manigent` CLI so the other `/manigent:*` skills can run.
|
|
14
|
+
|
|
15
|
+
Uses [uv](https://docs.astral.sh/uv/) — a single-binary installer that manages
|
|
16
|
+
Python toolchains and installs CLIs in isolated environments. This avoids
|
|
17
|
+
PEP 668 ("externally managed environment") errors, keeps the user's Python
|
|
18
|
+
clean, and works the same on macOS, Linux, and WSL.
|
|
19
|
+
|
|
20
|
+
## Requirements
|
|
21
|
+
|
|
22
|
+
- **`manigent >= 1.2.4`** — bump this floor together with the plugin
|
|
23
|
+
manifest when the plugin depends on newer CLI features.
|
|
24
|
+
- **Python 3.11–3.13** — manigent does **not** support Python 3.14+.
|
|
25
|
+
`patchright` (browser stealth) ships no 3.14 wheels, so a 3.14 install
|
|
26
|
+
either fails to resolve or silently drops browser support. Bootstrap
|
|
27
|
+
pins the CLI to Python 3.11 (step 4) so this ceiling holds regardless of
|
|
28
|
+
the machine's default interpreter.
|
|
29
|
+
|
|
30
|
+
## Steps
|
|
31
|
+
|
|
32
|
+
1. **Check whether `manigent` is already installed and recent**:
|
|
33
|
+
```bash
|
|
34
|
+
if command -v manigent >/dev/null 2>&1; then
|
|
35
|
+
INSTALLED=$(manigent --version 2>/dev/null | awk '{print $NF}')
|
|
36
|
+
echo "Found manigent $INSTALLED"
|
|
37
|
+
else
|
|
38
|
+
echo "manigent not installed"
|
|
39
|
+
fi
|
|
40
|
+
```
|
|
41
|
+
- If installed and version >= 1.2.4: tell the user it is already set up
|
|
42
|
+
and skip to step 5.
|
|
43
|
+
- If installed but older: proceed (step 4 will use `--force` to upgrade).
|
|
44
|
+
|
|
45
|
+
2. **Install `uv` if missing** (choose the shell that matches the user's machine):
|
|
46
|
+
|
|
47
|
+
**macOS / Linux / WSL / Git Bash:**
|
|
48
|
+
```bash
|
|
49
|
+
if ! command -v uv >/dev/null 2>&1; then
|
|
50
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
51
|
+
export PATH="$HOME/.local/bin:$PATH"
|
|
52
|
+
fi
|
|
53
|
+
uv --version
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
**Windows (PowerShell):**
|
|
57
|
+
```powershell
|
|
58
|
+
if (-not (Get-Command uv -ErrorAction SilentlyContinue)) {
|
|
59
|
+
irm https://astral.sh/uv/install.ps1 | iex
|
|
60
|
+
}
|
|
61
|
+
uv --version
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Detect the platform before running — if `uname` succeeds, use the bash form;
|
|
65
|
+
otherwise use the PowerShell form. Or simply ask the user which shell
|
|
66
|
+
they're using.
|
|
67
|
+
|
|
68
|
+
- If the install fails (no network, strict shell), suggest a package
|
|
69
|
+
manager fallback: `brew install uv` (macOS), `apt install uv` (newer
|
|
70
|
+
Debian/Ubuntu), `winget install --id=astral-sh.uv -e` (Windows), or
|
|
71
|
+
`scoop install uv`.
|
|
72
|
+
|
|
73
|
+
3. **Ensure Python 3.11 is available to uv**:
|
|
74
|
+
```bash
|
|
75
|
+
uv python install 3.11
|
|
76
|
+
```
|
|
77
|
+
This is idempotent — `uv` will pick up an existing 3.11 if present, or
|
|
78
|
+
download one into its managed toolchain directory.
|
|
79
|
+
|
|
80
|
+
4. **Install (or upgrade) `manigent`**:
|
|
81
|
+
```bash
|
|
82
|
+
# Fresh install:
|
|
83
|
+
uv tool install --python 3.11 'manigent>=1.2.4'
|
|
84
|
+
|
|
85
|
+
# Or, if an older version was already installed:
|
|
86
|
+
uv tool install --force --python 3.11 'manigent>=1.2.4'
|
|
87
|
+
```
|
|
88
|
+
Always pass `--python 3.11` explicitly. Without it, `uv` installs the
|
|
89
|
+
tool against its **default** interpreter — which on a machine whose uv
|
|
90
|
+
default is Python 3.14+ pulls in an incompatible interpreter: `patchright`
|
|
91
|
+
(browser stealth) has no 3.14 wheels, so resolution either fails or
|
|
92
|
+
silently drops that dependency and browser-driven skills break. Pinning
|
|
93
|
+
3.11 makes the install deterministic regardless of the user's uv default.
|
|
94
|
+
|
|
95
|
+
5. **Verify**:
|
|
96
|
+
```bash
|
|
97
|
+
manigent --version
|
|
98
|
+
```
|
|
99
|
+
- If the command is still not found, `~/.local/bin` (uv's default tool
|
|
100
|
+
install prefix) is not on PATH. Tell the user to add this to their
|
|
101
|
+
shell rc file and reopen the shell:
|
|
102
|
+
```bash
|
|
103
|
+
export PATH="$HOME/.local/bin:$PATH"
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
6. **Confirm and next steps**: tell the user the CLI is ready, and suggest:
|
|
107
|
+
- `/manigent:signup` to register a new account, or
|
|
108
|
+
- `/manigent:login` if they already have one — then `/manigent:register-assistant`.
|
|
109
|
+
|
|
110
|
+
## Fallbacks
|
|
111
|
+
|
|
112
|
+
Only use these if `uv` cannot be installed:
|
|
113
|
+
|
|
114
|
+
- **pipx** (requires Python already on the system):
|
|
115
|
+
```bash
|
|
116
|
+
# macOS: brew install pipx
|
|
117
|
+
# Debian/Ubuntu: sudo apt install pipx
|
|
118
|
+
# If the system default is Python 3.14+, point pipx at a 3.11–3.13
|
|
119
|
+
# interpreter: pipx install --python python3.11 'manigent>=1.2.4'
|
|
120
|
+
pipx install 'manigent>=1.2.4'
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
- **`pip install --user`** (last resort; may require `--break-system-packages`
|
|
124
|
+
on PEP 668 systems like recent macOS Homebrew Python or Debian 12+):
|
|
125
|
+
```bash
|
|
126
|
+
# Use a 3.11–3.13 interpreter here (e.g. python3.11) if the default is 3.14+.
|
|
127
|
+
python3 -m pip install --user 'manigent>=1.2.4'
|
|
128
|
+
# Or if PEP 668 blocks it:
|
|
129
|
+
python3 -m pip install --user --break-system-packages 'manigent>=1.2.4'
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Upgrading later
|
|
133
|
+
|
|
134
|
+
To upgrade a previously bootstrapped install:
|
|
135
|
+
```bash
|
|
136
|
+
uv tool upgrade manigent
|
|
137
|
+
```
|
|
138
|
+
Other plugin skills may ask for bootstrap to be re-run when they need a newer
|
|
139
|
+
CLI than the one currently installed — in that case use the `--force` form in
|
|
140
|
+
step 4 with the new minimum version.
|
|
141
|
+
|
|
142
|
+
## Error handling
|
|
143
|
+
|
|
144
|
+
- **"curl: command not found"**: on minimal containers, install curl first
|
|
145
|
+
(`apt install curl`) or use `wget`: `wget -qO- https://astral.sh/uv/install.sh | sh`.
|
|
146
|
+
- **"uv: command not found" after install**: the install script added `uv` to
|
|
147
|
+
`~/.local/bin`, which is not on PATH yet in this shell. Run `export
|
|
148
|
+
PATH="$HOME/.local/bin:$PATH"` and re-try.
|
|
149
|
+
- **Corporate proxy blocks uv install**: fall back to pipx; if pipx is also
|
|
150
|
+
blocked, ask the user for a cached wheel and `pip install` it directly.
|
|
151
|
+
|
|
152
|
+
## Platform notes
|
|
153
|
+
|
|
154
|
+
- **macOS / Linux / WSL**: first-class. Skill commands assume a POSIX shell (bash/zsh/Git Bash).
|
|
155
|
+
- **Windows native (PowerShell)**: the `uv` install, `uv tool install manigent`, and `manigent start`/`stop`/`status` all work. Under the hood the CLI branches on `sys.platform` to spawn detached processes with `CREATE_NEW_PROCESS_GROUP` and stop them via `CTRL_BREAK_EVENT` → `taskkill /F`. For the skill-shell commands in other `/manigent:*` skills, use **Git Bash** (ships with Git for Windows) since they use POSIX syntax.
|
|
156
|
+
- **Shared machines**: `uv tool install` installs per-user to `~/.local/share/uv/tools/` (macOS/Linux) or `%LOCALAPPDATA%\uv\tools\` (Windows), not system-wide.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: install-agent
|
|
3
|
+
description: >
|
|
4
|
+
Install ONE ready-made specialist agent from the Manigent agent pool
|
|
5
|
+
(contract reviewer, financial model builder, ...). Use when the user asks
|
|
6
|
+
for "an agent that can <X>", "add a <specialist>", "what agents can I
|
|
7
|
+
install", "install <name>", or when their request needs expertise none of
|
|
8
|
+
their own agents has and the pool lists a specialist for it. Lists the pool,
|
|
9
|
+
proposes the match, and on the user's yes runs `manigent agent install
|
|
10
|
+
<name>` and starts it. For an agent the user wants to define themselves, use
|
|
11
|
+
register-agent (or onboard-agent) instead.
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Install a specialist agent from the pool
|
|
15
|
+
|
|
16
|
+
The pool is a public set of specialist agents, each published only after it
|
|
17
|
+
beat a strong generalist on held-out tasks in its field. Installing one
|
|
18
|
+
registers it under the user's account and copies its role, field knowledge,
|
|
19
|
+
reference material and private skills into its home on this computer. Every
|
|
20
|
+
file is checked against the SHA-256 the pool lists.
|
|
21
|
+
|
|
22
|
+
Agents are installed **one at a time**. There is no "install a team".
|
|
23
|
+
|
|
24
|
+
## 1. See what the pool has
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
manigent agent install --list --json
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Each entry has a `name`, a one-line `blurb`, a longer `description` and
|
|
31
|
+
`sample_requests`. The default pool is the public `manigent-agents` repo at
|
|
32
|
+
the release this runner pins. Pass `--from <url-or-path>` only if the user
|
|
33
|
+
names another pool.
|
|
34
|
+
|
|
35
|
+
## 2. Propose, then wait for a yes
|
|
36
|
+
|
|
37
|
+
Match the user's need against the blurbs and descriptions. Reply with the
|
|
38
|
+
one agent you recommend: its name, what it does in one sentence, and one of
|
|
39
|
+
its sample requests so the user can see the kind of work it takes. If two
|
|
40
|
+
agents fit, say which you would pick and why. If nothing fits, say so and
|
|
41
|
+
offer `register-agent` instead. Do not invent pool agents.
|
|
42
|
+
|
|
43
|
+
Installing creates an agent on the user's account and files on their
|
|
44
|
+
computer, so **ask before you run it**, unless the user already named the
|
|
45
|
+
agent and asked you to install it.
|
|
46
|
+
|
|
47
|
+
## 3. Install and start it
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
manigent agent install "<name>" --username "<owner-username>"
|
|
51
|
+
manigent start --user "<owner-username>" --agent "<name>"
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Useful options: `--team "<label>"` adds a TEAMS-sidebar label on top of the
|
|
55
|
+
pool's own; `--llm-provider <p>` picks the model (default: a copy of the
|
|
56
|
+
user's default model); `--auto-personalize` asks the new agent to tailor
|
|
57
|
+
itself to the user on its first turn.
|
|
58
|
+
|
|
59
|
+
Exit codes: `0` installed (running it again updates the agent and keeps any
|
|
60
|
+
file changed locally since the last install); `2` no such agent in the pool
|
|
61
|
+
(the error suggests close names); `1` the install was refused or a file
|
|
62
|
+
failed its checksum. Relay the error verbatim and do not retry with other
|
|
63
|
+
flags. A refusal saying the user already has an agent with that name means
|
|
64
|
+
they made one themselves. Ask them to rename or delete it first.
|
|
65
|
+
|
|
66
|
+
## 4. Tell the user
|
|
67
|
+
|
|
68
|
+
Say the agent is installed and running, and give one of its sample requests
|
|
69
|
+
as a first thing to try in its DM. If the user wants it to learn about them
|
|
70
|
+
first, offer `onboard-agent` (a mentor brief and deep research, distilled
|
|
71
|
+
into its memory).
|