tradingcodex 2.1.2__tar.gz → 2.1.3__tar.gz
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.
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/CHANGELOG.md +13 -0
- tradingcodex-2.1.3/PKG-INFO +235 -0
- tradingcodex-2.1.3/README.md +197 -0
- tradingcodex-2.1.3/assets/tradingcodex-dynamics.svg +109 -0
- tradingcodex-2.1.3/assets/tradingcodex-statics.svg +54 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/data-sources-and-openbb.md +8 -8
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/harness.md +6 -6
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/roles-skills-and-workflows.md +13 -12
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_brain_skill.py +1 -1
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_codex_native_orchestration.py +23 -15
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_investment_brain_prompt_layers.py +38 -28
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_order_turn_grant.py +1 -1
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_release_contract.py +1 -1
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_research_forecast_surfaces.py +2 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_source_snapshot_agent_contract.py +13 -16
- tradingcodex-2.1.3/tradingcodex.egg-info/PKG-INFO +235 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex.egg-info/SOURCES.txt +3 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/doctor.py +4 -4
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/agents.py +1 -2
- tradingcodex-2.1.3/tradingcodex_service/version.py +1 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/.codex/config.toml +0 -2
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/.codex/prompts/base_instructions/fixed-role.md +6 -7
- tradingcodex-2.1.3/workspace_templates/modules/codex-base/files/.codex/prompts/base_instructions/head-manager.md +101 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-workflow/SKILL.md +16 -16
- tradingcodex-2.1.3/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-workflow/playbooks/context-overlays.md +26 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-workflow/playbooks/research-framing.md +15 -8
- tradingcodex-2.1.3/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-source-gate/SKILL.md +58 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/technical-analyst/tcx-technical/SKILL.md +2 -0
- tradingcodex-2.1.2/PKG-INFO +0 -199
- tradingcodex-2.1.2/README.md +0 -161
- tradingcodex-2.1.2/tradingcodex.egg-info/PKG-INFO +0 -199
- tradingcodex-2.1.2/tradingcodex_service/version.py +0 -1
- tradingcodex-2.1.2/workspace_templates/modules/codex-base/files/.codex/prompts/base_instructions/head-manager.md +0 -195
- tradingcodex-2.1.2/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-source-gate/SKILL.md +0 -95
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/CONTRIBUTING.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/LICENSE +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/MANIFEST.in +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/NOTICE +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/TRADEMARKS.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/audit/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/audit/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/audit/apps.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/audit/migrations/0001_v1_initial.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/audit/migrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/audit/models.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/harness/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/harness/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/harness/apps.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/harness/migrations/0001_v1_initial.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/harness/migrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/harness/models.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/harness/templatetags/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/integrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/integrations/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/integrations/apps.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/integrations/migrations/0001_v1_initial.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/integrations/migrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/integrations/models.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/apps.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/migrations/0001_v1_initial.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/migrations/0002_remove_external_mcp_gate.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/migrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/models.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/mcp/services.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/orders/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/orders/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/orders/apps.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/orders/migrations/0001_v1_initial.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/orders/migrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/orders/models.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/orders/services.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/policy/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/policy/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/policy/apps.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/policy/migrations/0001_v1_initial.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/policy/migrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/policy/models.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/policy/services.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/portfolio/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/portfolio/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/portfolio/apps.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/portfolio/migrations/0001_v1_initial.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/portfolio/migrations/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/apps/portfolio/models.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/assets/tradingcodex-banner-v1.png +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/assets/tradingcodex-banner-v2.png +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/assets/tradingcodex-banner-v3.png +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/assets/tradingcodex-banner.svg +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/README.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/architecture.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/codex-native-orchestration.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/decision-memory.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/deployment.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/financial-workflow-references.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/generated-workspaces.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/guardrails.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/improvement-loop.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/interfaces-and-surfaces.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/investment-brain-plugins.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/knowledge-wikis.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/licensing-and-commercialization.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/product-direction.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/release-readiness.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/research-memory-and-artifacts.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/safety-policy-and-execution.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/user-facing-skills.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/docs/validation-and-test-plan.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/index.html +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/package-lock.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/package.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/App.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/ViewerShell.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/api.ts +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/domain.ts +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/features/EpisodesPage.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/features/LibraryPage.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/features/SystemPage.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/features/WikiPage.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/main.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/navigation.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/navigation.test.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/styles.css +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/ui.tsx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/src/viewer-data.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/tsconfig.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/frontend/vite.config.ts +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/install.sh +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/installation.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/pyproject.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/setup.cfg +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_artifact_authentication.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_artifact_catalog.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_artifact_v2.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_broker_center_prd.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_build_contract_metadata.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_build_hook.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_build_turn_grant.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_calculation_runner.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_clean_v1_cli_audit.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_codex_capabilities.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_codex_cli_compat.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_codex_cli_contract.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_datasets.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_decision_memory_core.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_dev_bootstrap.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_dynamic_artifact_quality.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_e2e_user_scenarios.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_evaluation_lab_hardening.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_evaluation_profiles.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_guidebook_contract.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_investment_analysis.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_investment_brain_cli.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_investment_brain_provenance.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_investment_brain_registry.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_investor_context.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_knowledge_wikis.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_mcp_broker_release_health.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_native_execution_gateway.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_platform_runtime.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_provider_source_approval.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_research_object_catalog.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_research_objects.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_research_spec_profiles.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_runtime_paths.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_runtime_profile.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_security_invariants.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_skill_runtime_boundaries.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_v1_migrations.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_v1_state_integrity.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_viewer.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tests/test_workspace_git_contract.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex.egg-info/dependency_links.txt +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex.egg-info/entry_points.txt +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex.egg-info/requires.txt +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex.egg-info/top_level.txt +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/__main__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/calculation-runtime-lock.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/calculation-runtime-requirements.txt +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/calculation_runner.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/bootstrap.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/build.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/connectors.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/data_sources.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/db.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/decision.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/evaluation.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/forecast.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/home.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/investment_brains.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/investor_context.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/mcp.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/orders.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/policy.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/profile.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/research.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/skills.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/strategies.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/subagents.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/utils.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/wikis.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/workflow.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/commands/workspaces.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/generator.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/mcp_stdio.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/package_source.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/service_autostart.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/startup_status.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_cli/versioning.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/admin.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/api.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/analysis_runs.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/artifact_bindings.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/artifact_catalog.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/artifact_quality.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/artifact_v2.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/audit.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/brokers.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/build_gateway.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/calculations.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/codex_capabilities.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/common.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/data_sources.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/datasets.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/decision_episodes.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/decision_packages.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/evaluation_lab.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/execution_gateway.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/forecasting.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/git_subprocess.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/harness.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/health.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/investment_analysis.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/investment_brains.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/investor_context.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/judgment_postmortems.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/judgments.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/knowledge_wikis.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/managed_package_sources.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/markdown_preview.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/operator_authority.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/orders.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/policy.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/portfolio.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/postmortems.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/research.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/research_object_catalog.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/research_objects.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/research_specs.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/runtime.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/skill_invocations.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/source_snapshots.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/viewer.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/wiki_viewer.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/workspace_git.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/application/workspaces.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/asgi.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/log_safety.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/mcp_runtime.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/runtime_profile.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/settings.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_admin/favicon.svg +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/assets/allPaths-DTYZmYwK.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/assets/allPathsLoader-DcM0tTg5.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/assets/index-Bb8LR_4w.css +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/assets/index-C4QYjUvS.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/assets/paths-BOuWfKow.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/assets/paths-CI3Rjsyg.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/assets/splitPathsBySizeLoader-B1K4iYsq.js +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/static/tradingcodex_web/index.html +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/urls.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/viewer_api.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/web.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/tradingcodex_service/wsgi.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/__init__.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/audit/files/.tradingcodex/audit/README.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/audit/files/trading/audit/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/audit/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/.codex/hooks/tradingcodex_hook.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/.codex/hooks.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/.codex/rules/tradingcodex.rules +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/.tradingcodex/cli.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/.tradingcodex/config.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/AGENTS.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/pyproject.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/tcx +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/tcx-calc +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/tcx-calc.cmd +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/files/tcx.cmd +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/codex-base/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/policies/restricted-list.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/approval_receipt.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/audit_event.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/evidence_pack.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/execution_result.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/fundamental_report.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/news_report.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/order_ticket.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/portfolio_review.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/postmortem_report.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/research_artifact.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/risk_report.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/technical_report.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/thesis.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/valuation.schema.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/enforcement-guardrails/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/fundamental-analyst.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/instrument-analyst.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/judgment-reviewer.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/macro-analyst.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/news-analyst.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/portfolio-manager.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/risk-manager.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/technical-analyst.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/valuation-analyst.toml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/files/.tradingcodex/mainagent/skill-change-proposals/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/fixed-subagents/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/guidance-guardrails/files/.tradingcodex/guidance/guardrails.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/guidance-guardrails/files/.tradingcodex/guidance/task-quality-checklist.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/guidance-guardrails/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/.tradingcodex/secrets.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/forecasts/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/market-data/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/portfolio/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/fundamental/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/instrument/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/macro/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/news/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/policy/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/portfolio/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/postmortem/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/risk/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/technical/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/reports/valuation/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/files/trading/research/.gitkeep +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/information-barriers/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/paper-trading/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-automate/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-automate/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-brain/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-brain/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-brain/references/bundle-contract.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-build/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-build/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-investor-context/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-investor-context/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-memory/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-memory/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-order-allow/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-order-allow/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-order-cancel/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-order-cancel/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-order-submit/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-order-submit/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-plan/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-plan/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-server/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-server/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-strategy/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-strategy/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-wiki/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-wiki/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-wiki/references/bundle-contract.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-workflow/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/fundamental-analyst/tcx-fundamental/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/fundamental-analyst/tcx-fundamental/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/instrument-analyst/tcx-instrument/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/instrument-analyst/tcx-instrument/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/judgment-reviewer/tcx-judgment/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/judgment-reviewer/tcx-judgment/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/macro-analyst/tcx-macro/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/macro-analyst/tcx-macro/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/news-analyst/tcx-news/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/news-analyst/tcx-news/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/tcx-order-draft/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/tcx-order-draft/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/tcx-portfolio/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/tcx-portfolio/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/tcx-order-approve/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/tcx-order-approve/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/tcx-policy/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/tcx-policy/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/tcx-risk/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/tcx-risk/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-anti-overfit/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-anti-overfit/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-artifact/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-artifact/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-calculation/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-calculation/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-calculation/references/data-runtime.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-calculation/references/finance-methods.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-data-qc/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-data-qc/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-evidence/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-evidence/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-forecast/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-forecast/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-scenarios/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-scenarios/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-source-gate/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/tcx-source-gate/references/openbb-mcp.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/technical-analyst/tcx-technical/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/valuation-analyst/tcx-valuation/SKILL.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/valuation-analyst/tcx-valuation/agents/openai.yaml +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/repo-skills/module.json +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/enforcer/README.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/gateway/README.md +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/server.py +0 -0
- {tradingcodex-2.1.2 → tradingcodex-2.1.3}/workspace_templates/modules/tradingcodex-mcp/module.json +0 -0
|
@@ -2,6 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 2.1.3 - 2026-07-25
|
|
6
|
+
|
|
7
|
+
- Reduce always-loaded Head Manager and shared source-routing guidance, move
|
|
8
|
+
optional context and domain rules to their owning workflow resources, remove
|
|
9
|
+
producer-only dataset tools from the Head Manager, and stop additional
|
|
10
|
+
research when its expected decision value no longer justifies its cost.
|
|
11
|
+
- Refresh README onboarding around the dynamic research team, reusable
|
|
12
|
+
knowledge, and skill entrypoints, and recommend `gpt-5.6-sol` with `high` or
|
|
13
|
+
`xhigh` reasoning for full Head Manager research workflows.
|
|
14
|
+
- Let research answers choose a natural presentation while explaining material
|
|
15
|
+
results in sufficient detail, and offer a deep explanation from completed
|
|
16
|
+
research when the user's initial request is best answered concisely.
|
|
17
|
+
|
|
5
18
|
## 2.1.2 - 2026-07-24
|
|
6
19
|
|
|
7
20
|
- Treat ASCII skill-name case and normalized whitespace layout as presentation
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: tradingcodex
|
|
3
|
+
Version: 2.1.3
|
|
4
|
+
Summary: Local-first investment operating system for Codex-native research and service-gated execution.
|
|
5
|
+
Author: TradingCodex Authors
|
|
6
|
+
License-Expression: Apache-2.0
|
|
7
|
+
Project-URL: Homepage, https://github.com/monarchjuno/tradingcodex
|
|
8
|
+
Project-URL: Documentation, https://github.com/monarchjuno/tradingcodex/blob/main/docs/README.md
|
|
9
|
+
Project-URL: Repository, https://github.com/monarchjuno/tradingcodex.git
|
|
10
|
+
Project-URL: Issues, https://github.com/monarchjuno/tradingcodex/issues
|
|
11
|
+
Keywords: trading,django,codex,mcp,portfolio,research
|
|
12
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
13
|
+
Classifier: Framework :: Django
|
|
14
|
+
Classifier: Framework :: Django :: 5.2
|
|
15
|
+
Classifier: Intended Audience :: Financial and Insurance Industry
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
21
|
+
Classifier: Topic :: Office/Business :: Financial :: Investment
|
|
22
|
+
Requires-Python: <3.15,>=3.11
|
|
23
|
+
Description-Content-Type: text/markdown
|
|
24
|
+
License-File: LICENSE
|
|
25
|
+
License-File: NOTICE
|
|
26
|
+
Requires-Dist: django<5.3,>=5.2
|
|
27
|
+
Requires-Dist: django-ninja<2,>=1.4
|
|
28
|
+
Requires-Dist: markdown-it-py<5,>=3
|
|
29
|
+
Requires-Dist: nh3<0.4,>=0.3
|
|
30
|
+
Requires-Dist: packaging>=24
|
|
31
|
+
Requires-Dist: pydantic>=2
|
|
32
|
+
Requires-Dist: pyarrow==25.0.0
|
|
33
|
+
Requires-Dist: PyYAML>=6
|
|
34
|
+
Requires-Dist: whitenoise<7,>=6.12
|
|
35
|
+
Provides-Extra: dev
|
|
36
|
+
Requires-Dist: pytest>=8; extra == "dev"
|
|
37
|
+
Dynamic: license-file
|
|
38
|
+
|
|
39
|
+
<h1 align="center">TradingCodex: An Evolving Multi-Agent Investment Team for Codex</h1>
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
<p align="center">
|
|
43
|
+
<img src="assets/tradingcodex-banner-v3.png" alt="TradingCodex brings market context into a Codex-native investment workflow" width="100%">
|
|
44
|
+
</p>
|
|
45
|
+
|
|
46
|
+
<div align="center">
|
|
47
|
+
<a href="https://pypi.org/project/tradingcodex/"><img alt="PyPI" src="https://img.shields.io/pypi/v/tradingcodex?label=PyPI"></a>
|
|
48
|
+
<a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache--2.0-blue"></a>
|
|
49
|
+
<img alt="Python" src="https://img.shields.io/badge/python-3.11--3.14-3776AB?logo=python&logoColor=white">
|
|
50
|
+
<img alt="Django" src="https://img.shields.io/badge/Django-5.2-092E20?logo=django&logoColor=white">
|
|
51
|
+
</div>
|
|
52
|
+
|
|
53
|
+
<p align="center">
|
|
54
|
+
<a href="#dynamics">Dynamics</a> ·
|
|
55
|
+
<a href="#statics">Statics</a> ·
|
|
56
|
+
<a href="#install">Install</a> ·
|
|
57
|
+
<a href="https://monarchjuno.github.io/tradingcodex/">User Guide</a>
|
|
58
|
+
</p>
|
|
59
|
+
|
|
60
|
+
TradingCodex brings an evolving investment team into native Codex. Ask a
|
|
61
|
+
question in ordinary language; the right agents collaborate, challenge the
|
|
62
|
+
evidence, and leave behind reusable context for the next decision.
|
|
63
|
+
|
|
64
|
+
It is research-first, local-first, and paper-first. A research answer never
|
|
65
|
+
becomes a broker action on its own.
|
|
66
|
+
|
|
67
|
+
## Dynamics
|
|
68
|
+
|
|
69
|
+
### The team changes with the question
|
|
70
|
+
|
|
71
|
+
TradingCodex does not send every ticker through the same checklist. Head
|
|
72
|
+
Manager reads the mandate, chooses the smallest useful group of agents, runs
|
|
73
|
+
independent work in parallel when useful, and revises the team when accepted
|
|
74
|
+
evidence exposes a new gap or conflict.
|
|
75
|
+
|
|
76
|
+
<p align="center">
|
|
77
|
+
<img src="assets/tradingcodex-dynamics.svg" alt="Head Manager dynamically coordinates nine investment specialist agents in a research loop" width="100%">
|
|
78
|
+
</p>
|
|
79
|
+
|
|
80
|
+
### The agents
|
|
81
|
+
|
|
82
|
+
| Agent | What it brings to the team |
|
|
83
|
+
| --- | --- |
|
|
84
|
+
| **Fundamental Analyst** | Business model, financials, filings, and economics. |
|
|
85
|
+
| **Technical Analyst** | Price, trend, momentum, volume, volatility, and liquidity. |
|
|
86
|
+
| **News Analyst** | Disclosures, news, chronology, and narrative change. |
|
|
87
|
+
| **Macro Analyst** | Rates, FX, commodities, policy, and macro transmission. |
|
|
88
|
+
| **Instrument Analyst** | ETF, index, options, crypto, and market-structure mechanics. |
|
|
89
|
+
| **Valuation Analyst** | Ranges, scenarios, sensitivities, and valuation gaps. |
|
|
90
|
+
| **Portfolio Manager** | Portfolio fit, sizing, concentration, and readiness. |
|
|
91
|
+
| **Risk Manager** | Downside, restrictions, risk checks, and approval readiness. |
|
|
92
|
+
| **Judgment Reviewer** | Independent challenge of evidence, conflicts, and confidence. |
|
|
93
|
+
|
|
94
|
+
### The workflow is a loop
|
|
95
|
+
|
|
96
|
+
```text
|
|
97
|
+
question
|
|
98
|
+
-> Head Manager
|
|
99
|
+
-> smallest useful specialist wave
|
|
100
|
+
-> accepted evidence and artifacts
|
|
101
|
+
-> follow up / add a role / request review / synthesize / stop
|
|
102
|
+
-> next question or decision
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
The next agent is chosen by the next useful question, not by a preset research
|
|
106
|
+
DAG. A narrow question can stay direct. A high-consequence recommendation can
|
|
107
|
+
expand to independent portfolio, risk, and judgment review. There is no
|
|
108
|
+
execution agent.
|
|
109
|
+
|
|
110
|
+
## Statics
|
|
111
|
+
|
|
112
|
+
### The context that stays with you
|
|
113
|
+
|
|
114
|
+
The current workflow is dynamic. The useful work it produces is static,
|
|
115
|
+
readable, and reusable: files and memory that make the next analysis better
|
|
116
|
+
without hiding the evidence inside a chat or silently changing system rules.
|
|
117
|
+
|
|
118
|
+
<p align="center">
|
|
119
|
+
<img src="assets/tradingcodex-statics.svg" alt="TradingCodex stores research memory, Wiki, Brain, and Decision Memory as reusable workspace context" width="100%">
|
|
120
|
+
</p>
|
|
121
|
+
|
|
122
|
+
| Static layer | What remains after the run |
|
|
123
|
+
| --- | --- |
|
|
124
|
+
| **Research Memory** | Source Snapshots, Datasets, reports, forecasts, decisions, calculations, provenance, and evidence gaps. |
|
|
125
|
+
| **Knowledge Wiki** | Reusable company, product, technology, industry, and value-chain background. Wiki content is context, not current evidence. |
|
|
126
|
+
| **Investment Brain** | Inquiry principles, causal frames, falsifiers, limits, and abstention rules for a selected analysis. |
|
|
127
|
+
| **Decision Memory** | Prior judgments, outcomes, postmortems, lessons, and explicit improvement records for future review. |
|
|
128
|
+
| **Strategy** | Reusable user-owned decision rules that can shape later research without granting execution authority. |
|
|
129
|
+
|
|
130
|
+
The workspace stays inspectable and versionable:
|
|
131
|
+
|
|
132
|
+
```text
|
|
133
|
+
trading/
|
|
134
|
+
research/ # snapshots, datasets, artifacts, calculations
|
|
135
|
+
reports/ # research reports and handoffs
|
|
136
|
+
forecasts/ # forward-looking judgments
|
|
137
|
+
decisions/ # decision context and review history
|
|
138
|
+
wikis/ # local and active Wiki knowledge
|
|
139
|
+
investment-brains/ # user-owned inquiry frameworks
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Knowledge, Brain, Strategy, and Decision Memory remain distinct. A Wiki does
|
|
143
|
+
not become proof, a Brain does not choose agents, and an improvement record does
|
|
144
|
+
not silently rewrite prompts, skills, policy, or execution gates.
|
|
145
|
+
|
|
146
|
+
## Install
|
|
147
|
+
|
|
148
|
+
For normal use, attach TradingCodex to the folder where you want research to
|
|
149
|
+
live. Do not clone this source repository into that workspace.
|
|
150
|
+
|
|
151
|
+
You need Git, `uvx`, and an installed, authenticated `codex` CLI.
|
|
152
|
+
|
|
153
|
+
On macOS/Linux:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
cd /path/to/an/empty-workspace
|
|
157
|
+
uvx --refresh --from tradingcodex tcx attach . && ./tcx doctor
|
|
158
|
+
./tcx service ensure
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
On native Windows PowerShell:
|
|
162
|
+
|
|
163
|
+
```powershell
|
|
164
|
+
cd C:\path\to\an\empty-workspace
|
|
165
|
+
uvx --refresh --from tradingcodex tcx attach .
|
|
166
|
+
.\tcx.cmd doctor
|
|
167
|
+
.\tcx.cmd service ensure
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
After installation, fully restart Codex, reopen and trust the workspace, and
|
|
171
|
+
trust every TradingCodex hook when Codex prompts you. If hooks are presented
|
|
172
|
+
one at a time, approve each project hook before starting a new task. The viewer
|
|
173
|
+
URL is printed by `./tcx service status`; the release default is
|
|
174
|
+
`http://127.0.0.1:48267/`. End users do not need Node, npm, or a separate
|
|
175
|
+
frontend server.
|
|
176
|
+
|
|
177
|
+
The Head Manager inherits the active Codex model and reasoning setting. For
|
|
178
|
+
full research workflows, we recommend `gpt-5.6-sol` with `high` or `xhigh`
|
|
179
|
+
reasoning.
|
|
180
|
+
|
|
181
|
+
### Start with skills
|
|
182
|
+
|
|
183
|
+
Start with the skill that matches the work. Each example is a prompt you can
|
|
184
|
+
paste into a new Codex task; the [full skill directory](https://monarchjuno.github.io/tradingcodex/skills.html)
|
|
185
|
+
has exact invocation rules, boundaries, and deeper examples.
|
|
186
|
+
|
|
187
|
+
| Skill | Use it for | Example |
|
|
188
|
+
| --- | --- | --- |
|
|
189
|
+
| [$tcx-plan](https://monarchjuno.github.io/tradingcodex/skill-plan.html) | Frame the outcome, scope, constraints, and stop conditions. | `Clarify a 3-year MSFT quality-compounder mandate. No order.` |
|
|
190
|
+
| [$tcx-workflow](https://monarchjuno.github.io/tradingcodex/skill-workflow.html) | Run dynamic research with the smallest useful team. | `Analyze MSFT as a medium-term quality compounder. Include contrary evidence. No order.` |
|
|
191
|
+
| [$tcx-memory](https://monarchjuno.github.io/tradingcodex/skill-memory.html) | Replay prior judgment and test whether lessons still hold. | `Review the last MSFT thesis against what was known then.` |
|
|
192
|
+
| [$tcx-wiki](https://monarchjuno.github.io/tradingcodex/skill-wiki.html) | Keep reusable company and industry context separate from live evidence. | `Put stable semiconductor value-chain facts from the latest Artifact into the Wiki.` |
|
|
193
|
+
| [$tcx-brain](https://monarchjuno.github.io/tradingcodex/skill-brain.html) | Shape inquiry with user-owned heuristics, falsifiers, and limits. | `Create a cautious quality-compounder inquiry framework.` |
|
|
194
|
+
| [$tcx-strategy](https://monarchjuno.github.io/tradingcodex/skill-strategy.html) | Turn decision rules into a reusable, reviewable method. | `Define entry, sizing, and invalidation rules for quality compounders.` |
|
|
195
|
+
|
|
196
|
+
Use the viewer to inspect the resulting Episodes, Library, Wiki, and System
|
|
197
|
+
posture. It is read-only; use Codex to continue, narrow, or stop the work.
|
|
198
|
+
|
|
199
|
+
## The guardrail
|
|
200
|
+
|
|
201
|
+
Research, Wiki, Brain, Strategy, memory, and automation do not imply broker
|
|
202
|
+
authority. Provider connection, ticket drafting, checks, approval, and final
|
|
203
|
+
action remain separate checkpoints. Paper is built in; live providers require
|
|
204
|
+
their own installation, policy approval, explicit confirmation, sync, and audit
|
|
205
|
+
gates.
|
|
206
|
+
|
|
207
|
+
Raw credentials never belong in prompts, workspace files, reports, API/MCP
|
|
208
|
+
responses, artifacts, or audit data.
|
|
209
|
+
|
|
210
|
+
## Learn more
|
|
211
|
+
|
|
212
|
+
- [Dynamic workflow](https://monarchjuno.github.io/tradingcodex/dynamic-workflow.html)
|
|
213
|
+
— evidence-driven agent selection, reassessment, and stopping.
|
|
214
|
+
- [Knowledge Wiki](https://monarchjuno.github.io/tradingcodex/skill-wiki.html)
|
|
215
|
+
— reusable background knowledge and explicit write boundaries.
|
|
216
|
+
- [Investment Brain](https://monarchjuno.github.io/tradingcodex/skill-brain.html)
|
|
217
|
+
— inquiry and interpretation frameworks.
|
|
218
|
+
- [Improve](https://monarchjuno.github.io/tradingcodex/improve.html) —
|
|
219
|
+
Decision Memory, postmortems, lessons, and controlled evolution.
|
|
220
|
+
- [Installation](installation.md) — updates, runtime homes, service startup,
|
|
221
|
+
and recovery.
|
|
222
|
+
- [Safety, policy, and execution](docs/safety-policy-and-execution.md) —
|
|
223
|
+
permissions, approvals, brokers, secrets, and final-action boundaries.
|
|
224
|
+
- [Documentation index](docs/README.md) — the complete product reference.
|
|
225
|
+
|
|
226
|
+
## Developing TradingCodex
|
|
227
|
+
|
|
228
|
+
This repository is product source, not a user workspace. Start with
|
|
229
|
+
[CONTRIBUTING.md](CONTRIBUTING.md), then follow the validation route in
|
|
230
|
+
[docs/validation-and-test-plan.md](docs/validation-and-test-plan.md).
|
|
231
|
+
|
|
232
|
+
## License
|
|
233
|
+
|
|
234
|
+
TradingCodex is an Apache-2.0 open-core project. See [LICENSE](LICENSE),
|
|
235
|
+
[NOTICE](NOTICE), and [TRADEMARKS.md](TRADEMARKS.md).
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
<h1 align="center">TradingCodex: An Evolving Multi-Agent Investment Team for Codex</h1>
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
<p align="center">
|
|
5
|
+
<img src="assets/tradingcodex-banner-v3.png" alt="TradingCodex brings market context into a Codex-native investment workflow" width="100%">
|
|
6
|
+
</p>
|
|
7
|
+
|
|
8
|
+
<div align="center">
|
|
9
|
+
<a href="https://pypi.org/project/tradingcodex/"><img alt="PyPI" src="https://img.shields.io/pypi/v/tradingcodex?label=PyPI"></a>
|
|
10
|
+
<a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache--2.0-blue"></a>
|
|
11
|
+
<img alt="Python" src="https://img.shields.io/badge/python-3.11--3.14-3776AB?logo=python&logoColor=white">
|
|
12
|
+
<img alt="Django" src="https://img.shields.io/badge/Django-5.2-092E20?logo=django&logoColor=white">
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
<p align="center">
|
|
16
|
+
<a href="#dynamics">Dynamics</a> ·
|
|
17
|
+
<a href="#statics">Statics</a> ·
|
|
18
|
+
<a href="#install">Install</a> ·
|
|
19
|
+
<a href="https://monarchjuno.github.io/tradingcodex/">User Guide</a>
|
|
20
|
+
</p>
|
|
21
|
+
|
|
22
|
+
TradingCodex brings an evolving investment team into native Codex. Ask a
|
|
23
|
+
question in ordinary language; the right agents collaborate, challenge the
|
|
24
|
+
evidence, and leave behind reusable context for the next decision.
|
|
25
|
+
|
|
26
|
+
It is research-first, local-first, and paper-first. A research answer never
|
|
27
|
+
becomes a broker action on its own.
|
|
28
|
+
|
|
29
|
+
## Dynamics
|
|
30
|
+
|
|
31
|
+
### The team changes with the question
|
|
32
|
+
|
|
33
|
+
TradingCodex does not send every ticker through the same checklist. Head
|
|
34
|
+
Manager reads the mandate, chooses the smallest useful group of agents, runs
|
|
35
|
+
independent work in parallel when useful, and revises the team when accepted
|
|
36
|
+
evidence exposes a new gap or conflict.
|
|
37
|
+
|
|
38
|
+
<p align="center">
|
|
39
|
+
<img src="assets/tradingcodex-dynamics.svg" alt="Head Manager dynamically coordinates nine investment specialist agents in a research loop" width="100%">
|
|
40
|
+
</p>
|
|
41
|
+
|
|
42
|
+
### The agents
|
|
43
|
+
|
|
44
|
+
| Agent | What it brings to the team |
|
|
45
|
+
| --- | --- |
|
|
46
|
+
| **Fundamental Analyst** | Business model, financials, filings, and economics. |
|
|
47
|
+
| **Technical Analyst** | Price, trend, momentum, volume, volatility, and liquidity. |
|
|
48
|
+
| **News Analyst** | Disclosures, news, chronology, and narrative change. |
|
|
49
|
+
| **Macro Analyst** | Rates, FX, commodities, policy, and macro transmission. |
|
|
50
|
+
| **Instrument Analyst** | ETF, index, options, crypto, and market-structure mechanics. |
|
|
51
|
+
| **Valuation Analyst** | Ranges, scenarios, sensitivities, and valuation gaps. |
|
|
52
|
+
| **Portfolio Manager** | Portfolio fit, sizing, concentration, and readiness. |
|
|
53
|
+
| **Risk Manager** | Downside, restrictions, risk checks, and approval readiness. |
|
|
54
|
+
| **Judgment Reviewer** | Independent challenge of evidence, conflicts, and confidence. |
|
|
55
|
+
|
|
56
|
+
### The workflow is a loop
|
|
57
|
+
|
|
58
|
+
```text
|
|
59
|
+
question
|
|
60
|
+
-> Head Manager
|
|
61
|
+
-> smallest useful specialist wave
|
|
62
|
+
-> accepted evidence and artifacts
|
|
63
|
+
-> follow up / add a role / request review / synthesize / stop
|
|
64
|
+
-> next question or decision
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
The next agent is chosen by the next useful question, not by a preset research
|
|
68
|
+
DAG. A narrow question can stay direct. A high-consequence recommendation can
|
|
69
|
+
expand to independent portfolio, risk, and judgment review. There is no
|
|
70
|
+
execution agent.
|
|
71
|
+
|
|
72
|
+
## Statics
|
|
73
|
+
|
|
74
|
+
### The context that stays with you
|
|
75
|
+
|
|
76
|
+
The current workflow is dynamic. The useful work it produces is static,
|
|
77
|
+
readable, and reusable: files and memory that make the next analysis better
|
|
78
|
+
without hiding the evidence inside a chat or silently changing system rules.
|
|
79
|
+
|
|
80
|
+
<p align="center">
|
|
81
|
+
<img src="assets/tradingcodex-statics.svg" alt="TradingCodex stores research memory, Wiki, Brain, and Decision Memory as reusable workspace context" width="100%">
|
|
82
|
+
</p>
|
|
83
|
+
|
|
84
|
+
| Static layer | What remains after the run |
|
|
85
|
+
| --- | --- |
|
|
86
|
+
| **Research Memory** | Source Snapshots, Datasets, reports, forecasts, decisions, calculations, provenance, and evidence gaps. |
|
|
87
|
+
| **Knowledge Wiki** | Reusable company, product, technology, industry, and value-chain background. Wiki content is context, not current evidence. |
|
|
88
|
+
| **Investment Brain** | Inquiry principles, causal frames, falsifiers, limits, and abstention rules for a selected analysis. |
|
|
89
|
+
| **Decision Memory** | Prior judgments, outcomes, postmortems, lessons, and explicit improvement records for future review. |
|
|
90
|
+
| **Strategy** | Reusable user-owned decision rules that can shape later research without granting execution authority. |
|
|
91
|
+
|
|
92
|
+
The workspace stays inspectable and versionable:
|
|
93
|
+
|
|
94
|
+
```text
|
|
95
|
+
trading/
|
|
96
|
+
research/ # snapshots, datasets, artifacts, calculations
|
|
97
|
+
reports/ # research reports and handoffs
|
|
98
|
+
forecasts/ # forward-looking judgments
|
|
99
|
+
decisions/ # decision context and review history
|
|
100
|
+
wikis/ # local and active Wiki knowledge
|
|
101
|
+
investment-brains/ # user-owned inquiry frameworks
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Knowledge, Brain, Strategy, and Decision Memory remain distinct. A Wiki does
|
|
105
|
+
not become proof, a Brain does not choose agents, and an improvement record does
|
|
106
|
+
not silently rewrite prompts, skills, policy, or execution gates.
|
|
107
|
+
|
|
108
|
+
## Install
|
|
109
|
+
|
|
110
|
+
For normal use, attach TradingCodex to the folder where you want research to
|
|
111
|
+
live. Do not clone this source repository into that workspace.
|
|
112
|
+
|
|
113
|
+
You need Git, `uvx`, and an installed, authenticated `codex` CLI.
|
|
114
|
+
|
|
115
|
+
On macOS/Linux:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
cd /path/to/an/empty-workspace
|
|
119
|
+
uvx --refresh --from tradingcodex tcx attach . && ./tcx doctor
|
|
120
|
+
./tcx service ensure
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
On native Windows PowerShell:
|
|
124
|
+
|
|
125
|
+
```powershell
|
|
126
|
+
cd C:\path\to\an\empty-workspace
|
|
127
|
+
uvx --refresh --from tradingcodex tcx attach .
|
|
128
|
+
.\tcx.cmd doctor
|
|
129
|
+
.\tcx.cmd service ensure
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
After installation, fully restart Codex, reopen and trust the workspace, and
|
|
133
|
+
trust every TradingCodex hook when Codex prompts you. If hooks are presented
|
|
134
|
+
one at a time, approve each project hook before starting a new task. The viewer
|
|
135
|
+
URL is printed by `./tcx service status`; the release default is
|
|
136
|
+
`http://127.0.0.1:48267/`. End users do not need Node, npm, or a separate
|
|
137
|
+
frontend server.
|
|
138
|
+
|
|
139
|
+
The Head Manager inherits the active Codex model and reasoning setting. For
|
|
140
|
+
full research workflows, we recommend `gpt-5.6-sol` with `high` or `xhigh`
|
|
141
|
+
reasoning.
|
|
142
|
+
|
|
143
|
+
### Start with skills
|
|
144
|
+
|
|
145
|
+
Start with the skill that matches the work. Each example is a prompt you can
|
|
146
|
+
paste into a new Codex task; the [full skill directory](https://monarchjuno.github.io/tradingcodex/skills.html)
|
|
147
|
+
has exact invocation rules, boundaries, and deeper examples.
|
|
148
|
+
|
|
149
|
+
| Skill | Use it for | Example |
|
|
150
|
+
| --- | --- | --- |
|
|
151
|
+
| [$tcx-plan](https://monarchjuno.github.io/tradingcodex/skill-plan.html) | Frame the outcome, scope, constraints, and stop conditions. | `Clarify a 3-year MSFT quality-compounder mandate. No order.` |
|
|
152
|
+
| [$tcx-workflow](https://monarchjuno.github.io/tradingcodex/skill-workflow.html) | Run dynamic research with the smallest useful team. | `Analyze MSFT as a medium-term quality compounder. Include contrary evidence. No order.` |
|
|
153
|
+
| [$tcx-memory](https://monarchjuno.github.io/tradingcodex/skill-memory.html) | Replay prior judgment and test whether lessons still hold. | `Review the last MSFT thesis against what was known then.` |
|
|
154
|
+
| [$tcx-wiki](https://monarchjuno.github.io/tradingcodex/skill-wiki.html) | Keep reusable company and industry context separate from live evidence. | `Put stable semiconductor value-chain facts from the latest Artifact into the Wiki.` |
|
|
155
|
+
| [$tcx-brain](https://monarchjuno.github.io/tradingcodex/skill-brain.html) | Shape inquiry with user-owned heuristics, falsifiers, and limits. | `Create a cautious quality-compounder inquiry framework.` |
|
|
156
|
+
| [$tcx-strategy](https://monarchjuno.github.io/tradingcodex/skill-strategy.html) | Turn decision rules into a reusable, reviewable method. | `Define entry, sizing, and invalidation rules for quality compounders.` |
|
|
157
|
+
|
|
158
|
+
Use the viewer to inspect the resulting Episodes, Library, Wiki, and System
|
|
159
|
+
posture. It is read-only; use Codex to continue, narrow, or stop the work.
|
|
160
|
+
|
|
161
|
+
## The guardrail
|
|
162
|
+
|
|
163
|
+
Research, Wiki, Brain, Strategy, memory, and automation do not imply broker
|
|
164
|
+
authority. Provider connection, ticket drafting, checks, approval, and final
|
|
165
|
+
action remain separate checkpoints. Paper is built in; live providers require
|
|
166
|
+
their own installation, policy approval, explicit confirmation, sync, and audit
|
|
167
|
+
gates.
|
|
168
|
+
|
|
169
|
+
Raw credentials never belong in prompts, workspace files, reports, API/MCP
|
|
170
|
+
responses, artifacts, or audit data.
|
|
171
|
+
|
|
172
|
+
## Learn more
|
|
173
|
+
|
|
174
|
+
- [Dynamic workflow](https://monarchjuno.github.io/tradingcodex/dynamic-workflow.html)
|
|
175
|
+
— evidence-driven agent selection, reassessment, and stopping.
|
|
176
|
+
- [Knowledge Wiki](https://monarchjuno.github.io/tradingcodex/skill-wiki.html)
|
|
177
|
+
— reusable background knowledge and explicit write boundaries.
|
|
178
|
+
- [Investment Brain](https://monarchjuno.github.io/tradingcodex/skill-brain.html)
|
|
179
|
+
— inquiry and interpretation frameworks.
|
|
180
|
+
- [Improve](https://monarchjuno.github.io/tradingcodex/improve.html) —
|
|
181
|
+
Decision Memory, postmortems, lessons, and controlled evolution.
|
|
182
|
+
- [Installation](installation.md) — updates, runtime homes, service startup,
|
|
183
|
+
and recovery.
|
|
184
|
+
- [Safety, policy, and execution](docs/safety-policy-and-execution.md) —
|
|
185
|
+
permissions, approvals, brokers, secrets, and final-action boundaries.
|
|
186
|
+
- [Documentation index](docs/README.md) — the complete product reference.
|
|
187
|
+
|
|
188
|
+
## Developing TradingCodex
|
|
189
|
+
|
|
190
|
+
This repository is product source, not a user workspace. Start with
|
|
191
|
+
[CONTRIBUTING.md](CONTRIBUTING.md), then follow the validation route in
|
|
192
|
+
[docs/validation-and-test-plan.md](docs/validation-and-test-plan.md).
|
|
193
|
+
|
|
194
|
+
## License
|
|
195
|
+
|
|
196
|
+
TradingCodex is an Apache-2.0 open-core project. See [LICENSE](LICENSE),
|
|
197
|
+
[NOTICE](NOTICE), and [TRADEMARKS.md](TRADEMARKS.md).
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1400 840" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">TradingCodex dynamic multi-agent workflow</title>
|
|
3
|
+
<desc id="desc">Head Manager receives a user question, selects a useful subset from nine individual agents, collects evidence, and loops back to reassess the next step.</desc>
|
|
4
|
+
<style>
|
|
5
|
+
.title { font-family: Arial, sans-serif; font-size: 36px; font-weight: 700; }
|
|
6
|
+
.subtitle { font-family: Arial, sans-serif; font-size: 19px; font-weight: 400; }
|
|
7
|
+
.label { font-family: Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 1.4px; }
|
|
8
|
+
.box-title { font-family: Arial, sans-serif; font-size: 23px; font-weight: 700; }
|
|
9
|
+
.role { font-family: Arial, sans-serif; font-size: 17px; font-weight: 700; }
|
|
10
|
+
.body { font-family: Arial, sans-serif; font-size: 15px; font-weight: 400; }
|
|
11
|
+
.small { font-family: Arial, sans-serif; font-size: 14px; font-weight: 400; }
|
|
12
|
+
.footer { font-family: Arial, sans-serif; font-size: 18px; font-weight: 700; }
|
|
13
|
+
</style>
|
|
14
|
+
|
|
15
|
+
<rect width="1400" height="840" rx="28" fill="#0b1627"/>
|
|
16
|
+
<path d="M0 135 H1400 M0 300 H1400 M0 465 H1400 M0 630 H1400" stroke="#b5cfff" stroke-opacity="0.05"/>
|
|
17
|
+
<path d="M90 0 V840 M440 0 V840 M790 0 V840 M1140 0 V840" stroke="#b5cfff" stroke-opacity="0.05"/>
|
|
18
|
+
|
|
19
|
+
<text x="70" y="72" fill="#f4f8ff" class="title">Dynamics: the team changes with the question</text>
|
|
20
|
+
<text x="70" y="108" fill="#afc1d8" class="subtitle">Head Manager selects the smallest useful set of agents, then lets evidence choose what happens next.</text>
|
|
21
|
+
|
|
22
|
+
<!-- Connectors are deliberately drawn before the cards so no line crosses a box. -->
|
|
23
|
+
<g fill="none" stroke="#68ddff" stroke-width="3" stroke-opacity="0.75">
|
|
24
|
+
<path d="M330 190 H485"/>
|
|
25
|
+
<path d="M700 250 V292"/>
|
|
26
|
+
<path d="M255 292 H1145" stroke-dasharray="8 10"/>
|
|
27
|
+
<path d="M255 292 V322"/>
|
|
28
|
+
<path d="M700 292 V322"/>
|
|
29
|
+
<path d="M1145 292 V322"/>
|
|
30
|
+
<path d="M255 386 V397 M700 386 V397 M1145 386 V397"/>
|
|
31
|
+
<path d="M255 397 H1145" stroke-dasharray="8 10"/>
|
|
32
|
+
<path d="M255 397 V408 M700 397 V408 M1145 397 V408"/>
|
|
33
|
+
<path d="M255 472 V483 M700 472 V483 M1145 472 V483"/>
|
|
34
|
+
<path d="M255 483 H1145" stroke-dasharray="8 10"/>
|
|
35
|
+
<path d="M255 483 V494 M700 483 V494 M1145 483 V494"/>
|
|
36
|
+
</g>
|
|
37
|
+
|
|
38
|
+
<g fill="none" stroke="#66d9bf" stroke-width="3" stroke-opacity="0.8">
|
|
39
|
+
<path d="M255 558 V610 M700 558 V610 M1145 558 V610"/>
|
|
40
|
+
<path d="M255 610 H1145"/>
|
|
41
|
+
<path d="M600 610 V660"/>
|
|
42
|
+
<path d="M840 705 H900" stroke="#b493ff" stroke-dasharray="8 8"/>
|
|
43
|
+
<path d="M888 698 L900 705 L888 712" stroke="#b493ff"/>
|
|
44
|
+
</g>
|
|
45
|
+
|
|
46
|
+
<g fill="none" stroke="#b493ff" stroke-width="3" stroke-opacity="0.85" stroke-dasharray="9 8">
|
|
47
|
+
<path d="M1300 705 H1375 V120 H700 V128"/>
|
|
48
|
+
<path d="M692 116 L700 128 L708 116" stroke-dasharray="none"/>
|
|
49
|
+
</g>
|
|
50
|
+
|
|
51
|
+
<g>
|
|
52
|
+
<rect x="70" y="145" width="260" height="90" rx="18" fill="#142a40" stroke="#66d9bf" stroke-width="2"/>
|
|
53
|
+
<text x="96" y="176" fill="#73e2d0" class="label">START</text>
|
|
54
|
+
<text x="96" y="208" fill="#f4f8ff" class="box-title">User question</text>
|
|
55
|
+
<text x="96" y="228" fill="#c0d0e3" class="small">outcome, scope, constraints</text>
|
|
56
|
+
|
|
57
|
+
<rect x="485" y="130" width="430" height="120" rx="22" fill="#1f4162" stroke="#68ddff" stroke-width="2"/>
|
|
58
|
+
<text x="520" y="166" fill="#8fe8ff" class="label">COORDINATOR</text>
|
|
59
|
+
<text x="520" y="205" fill="#f4f8ff" class="box-title">Head Manager</text>
|
|
60
|
+
<text x="520" y="232" fill="#c8d7ee" class="body">interpret -> select -> reassess -> synthesize</text>
|
|
61
|
+
|
|
62
|
+
</g>
|
|
63
|
+
|
|
64
|
+
<g>
|
|
65
|
+
<rect x="60" y="322" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
66
|
+
<text x="84" y="351" fill="#f4f8ff" class="role">Fundamental Analyst</text>
|
|
67
|
+
<text x="84" y="373" fill="#c0d0e3" class="small">business, financials, filings</text>
|
|
68
|
+
<rect x="505" y="322" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
69
|
+
<text x="529" y="351" fill="#f4f8ff" class="role">Technical Analyst</text>
|
|
70
|
+
<text x="529" y="373" fill="#c0d0e3" class="small">price, trend, volatility, liquidity</text>
|
|
71
|
+
<rect x="950" y="322" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
72
|
+
<text x="974" y="351" fill="#f4f8ff" class="role">News Analyst</text>
|
|
73
|
+
<text x="974" y="373" fill="#c0d0e3" class="small">disclosures, chronology, narrative</text>
|
|
74
|
+
|
|
75
|
+
<rect x="60" y="408" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
76
|
+
<text x="84" y="437" fill="#f4f8ff" class="role">Macro Analyst</text>
|
|
77
|
+
<text x="84" y="459" fill="#c0d0e3" class="small">rates, FX, policy transmission</text>
|
|
78
|
+
<rect x="505" y="408" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
79
|
+
<text x="529" y="437" fill="#f4f8ff" class="role">Instrument Analyst</text>
|
|
80
|
+
<text x="529" y="459" fill="#c0d0e3" class="small">ETF, options, crypto mechanics</text>
|
|
81
|
+
<rect x="950" y="408" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
82
|
+
<text x="974" y="437" fill="#f4f8ff" class="role">Valuation Analyst</text>
|
|
83
|
+
<text x="974" y="459" fill="#c0d0e3" class="small">ranges, scenarios, sensitivities</text>
|
|
84
|
+
|
|
85
|
+
<rect x="60" y="494" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
86
|
+
<text x="84" y="523" fill="#f4f8ff" class="role">Portfolio Manager</text>
|
|
87
|
+
<text x="84" y="545" fill="#c0d0e3" class="small">fit, sizing, concentration</text>
|
|
88
|
+
<rect x="505" y="494" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
89
|
+
<text x="529" y="523" fill="#f4f8ff" class="role">Risk Manager</text>
|
|
90
|
+
<text x="529" y="545" fill="#c0d0e3" class="small">downside, restrictions, readiness</text>
|
|
91
|
+
<rect x="950" y="494" width="390" height="64" rx="16" fill="#14253c" stroke="#56dfff" stroke-width="1.5"/>
|
|
92
|
+
<text x="974" y="523" fill="#f4f8ff" class="role">Judgment Reviewer</text>
|
|
93
|
+
<text x="974" y="545" fill="#c0d0e3" class="small">independent challenge, conflicts</text>
|
|
94
|
+
</g>
|
|
95
|
+
|
|
96
|
+
<g>
|
|
97
|
+
<rect x="360" y="670" width="480" height="90" rx="20" fill="#142b40" stroke="#66d9bf" stroke-width="2"/>
|
|
98
|
+
<text x="395" y="704" fill="#73e2d0" class="label">SHARED OUTPUT</text>
|
|
99
|
+
<text x="395" y="735" fill="#f4f8ff" class="box-title">Accepted evidence + artifacts</text>
|
|
100
|
+
<text x="395" y="753" fill="#c0d0e3" class="small">snapshots, datasets, reports, forecasts</text>
|
|
101
|
+
|
|
102
|
+
<rect x="900" y="670" width="400" height="90" rx="20" fill="#25203a" stroke="#b493ff" stroke-width="2"/>
|
|
103
|
+
<text x="935" y="704" fill="#c4a9ff" class="label">LOOP BACK</text>
|
|
104
|
+
<text x="935" y="735" fill="#f4f8ff" class="box-title">Reassess -> Head Manager</text>
|
|
105
|
+
<text x="935" y="753" fill="#d5c8ed" class="small">follow up / add / review / stop</text>
|
|
106
|
+
</g>
|
|
107
|
+
|
|
108
|
+
<text x="70" y="805" fill="#f5e8f2" class="footer">No fixed team. No preset DAG. The next useful question chooses the next useful agent.</text>
|
|
109
|
+
</svg>
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1400 680" role="img" aria-labelledby="title desc">
|
|
2
|
+
<title id="title">TradingCodex static memory and context</title>
|
|
3
|
+
<desc id="desc">Research Memory, Knowledge Wiki, Investment Brain, and Decision Memory remain as reusable context for future investment work.</desc>
|
|
4
|
+
<style>
|
|
5
|
+
.title { font-family: Arial, sans-serif; font-size: 36px; font-weight: 700; }
|
|
6
|
+
.subtitle { font-family: Arial, sans-serif; font-size: 19px; font-weight: 400; }
|
|
7
|
+
.card-title { font-family: Arial, sans-serif; font-size: 23px; font-weight: 700; }
|
|
8
|
+
.body { font-family: Arial, sans-serif; font-size: 17px; font-weight: 400; }
|
|
9
|
+
.label { font-family: Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: 1.4px; }
|
|
10
|
+
</style>
|
|
11
|
+
|
|
12
|
+
<rect width="1400" height="680" rx="28" fill="#0b1627"/>
|
|
13
|
+
<path d="M0 135 H1400 M0 340 H1400 M0 545 H1400" stroke="#b5cfff" stroke-opacity="0.05"/>
|
|
14
|
+
<path d="M110 0 V680 M460 0 V680 M810 0 V680 M1160 0 V680" stroke="#b5cfff" stroke-opacity="0.05"/>
|
|
15
|
+
|
|
16
|
+
<text x="70" y="72" fill="#f4f8ff" class="title">Statics: the context that stays with you</text>
|
|
17
|
+
<text x="70" y="108" fill="#afc1d8" class="subtitle">The current run is dynamic. Useful memory remains readable, reusable, and yours.</text>
|
|
18
|
+
|
|
19
|
+
<g>
|
|
20
|
+
<rect x="54" y="155" width="610" height="205" rx="22" fill="#0e1c2e" stroke="#56dfff" stroke-width="2"/>
|
|
21
|
+
<circle cx="96" cy="202" r="17" fill="#56dfff"/>
|
|
22
|
+
<text x="130" y="210" fill="#f4f8ff" class="card-title">Research Memory</text>
|
|
23
|
+
<text x="96" y="255" fill="#c0d0e3" class="body">Snapshots, datasets, reports, forecasts, decisions,</text>
|
|
24
|
+
<text x="96" y="282" fill="#c0d0e3" class="body">calculations, provenance, and source/as-of posture.</text>
|
|
25
|
+
<text x="96" y="327" fill="#73e2d0" class="label">EVIDENCE THAT SURVIVES THE CHAT</text>
|
|
26
|
+
</g>
|
|
27
|
+
|
|
28
|
+
<g>
|
|
29
|
+
<rect x="736" y="155" width="610" height="205" rx="22" fill="#0e1c2e" stroke="#b493ff" stroke-width="2"/>
|
|
30
|
+
<circle cx="778" cy="202" r="17" fill="#b493ff"/>
|
|
31
|
+
<text x="812" y="210" fill="#f4f8ff" class="card-title">Knowledge Wiki</text>
|
|
32
|
+
<text x="778" y="255" fill="#c0d0e3" class="body">Reusable company, industry, product, technology,</text>
|
|
33
|
+
<text x="778" y="282" fill="#c0d0e3" class="body">and value-chain background.</text>
|
|
34
|
+
<text x="778" y="327" fill="#73e2d0" class="label">BACKGROUND, NOT PROOF</text>
|
|
35
|
+
</g>
|
|
36
|
+
|
|
37
|
+
<g>
|
|
38
|
+
<rect x="54" y="405" width="610" height="205" rx="22" fill="#0e1c2e" stroke="#66d9bf" stroke-width="2"/>
|
|
39
|
+
<circle cx="96" cy="452" r="17" fill="#66d9bf"/>
|
|
40
|
+
<text x="130" y="460" fill="#f4f8ff" class="card-title">Investment Brain</text>
|
|
41
|
+
<text x="96" y="505" fill="#c0d0e3" class="body">Inquiry principles, causal frames, falsifiers, limits,</text>
|
|
42
|
+
<text x="96" y="532" fill="#c0d0e3" class="body">and abstention rules for a selected run.</text>
|
|
43
|
+
<text x="96" y="577" fill="#73e2d0" class="label">HOW TO THINK, NOT WHAT TO CLAIM</text>
|
|
44
|
+
</g>
|
|
45
|
+
|
|
46
|
+
<g>
|
|
47
|
+
<rect x="736" y="405" width="610" height="205" rx="22" fill="#0e1c2e" stroke="#ffd27c" stroke-width="2"/>
|
|
48
|
+
<circle cx="778" cy="452" r="17" fill="#ffd27c"/>
|
|
49
|
+
<text x="812" y="460" fill="#f4f8ff" class="card-title">Decision Memory</text>
|
|
50
|
+
<text x="778" y="505" fill="#c0d0e3" class="body">Past judgments, forecasts, postmortems, lessons,</text>
|
|
51
|
+
<text x="778" y="532" fill="#c0d0e3" class="body">and explicit improvement review.</text>
|
|
52
|
+
<text x="778" y="577" fill="#73e2d0" class="label">HUMAN-CONTROLLED REVIEW</text>
|
|
53
|
+
</g>
|
|
54
|
+
</svg>
|
|
@@ -23,6 +23,9 @@ This is a short operating procedure, not a service-side source-rating system or
|
|
|
23
23
|
a guarantee about a third party. A role names the provider where possible, does
|
|
24
24
|
not repeat an unchanged request to the same source, and keeps a partial result
|
|
25
25
|
while asking the next source only for the missing field, identifier, or period.
|
|
26
|
+
It continues only when another obtainable source has a credible path to
|
|
27
|
+
changing the conclusion, confidence, or readiness and its expected decision
|
|
28
|
+
value justifies the added work.
|
|
26
29
|
TradingCodex does not install, classify, proxy, approve, or audit a user-owned
|
|
27
30
|
capability. The normal research safety boundaries still apply: never expose a
|
|
28
31
|
secret or mix research retrieval with account, order, or other mutation work.
|
|
@@ -71,14 +74,11 @@ epoch values are converted once; neither is repaired by inventing a timezone.
|
|
|
71
74
|
A material missing slice that remains obtainable is fetched from the next
|
|
72
75
|
relevant source or returned to its live owner before an evidence-gap abstention.
|
|
73
76
|
|
|
74
|
-
The
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
empty/partial/stale/authentication/entitlement/rate-limit warnings, material
|
|
80
|
-
conflicts, and remaining coverage gaps visible. Narrow facts do not carry a
|
|
81
|
-
full evidence checklist.
|
|
77
|
+
The common gate owns source choice, freshness, time ambiguity, bounded
|
|
78
|
+
verification, and provenance. The active role skill owns domain-specific
|
|
79
|
+
filing, market-data, corporate-action, instrument, and macro-vintage
|
|
80
|
+
requirements. Together they preserve only the point-in-time context needed for
|
|
81
|
+
the conclusion; narrow facts do not carry a full evidence checklist.
|
|
82
82
|
|
|
83
83
|
## Evidence records
|
|
84
84
|
|