apex-ai 0.1.0__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.
Files changed (226) hide show
  1. apex_ai-0.1.0/.github/FUNDING.yml +6 -0
  2. apex_ai-0.1.0/.github/ISSUE_TEMPLATE/bug_report.yml +89 -0
  3. apex_ai-0.1.0/.github/ISSUE_TEMPLATE/config.yml +11 -0
  4. apex_ai-0.1.0/.github/ISSUE_TEMPLATE/feature_request.yml +72 -0
  5. apex_ai-0.1.0/.github/dependabot.yml +112 -0
  6. apex_ai-0.1.0/.github/labeler.yml +53 -0
  7. apex_ai-0.1.0/.github/release-drafter.yml +129 -0
  8. apex_ai-0.1.0/.github/workflows/audit.yml +60 -0
  9. apex_ai-0.1.0/.github/workflows/ci.yml +137 -0
  10. apex_ai-0.1.0/.github/workflows/commitlint.yml +72 -0
  11. apex_ai-0.1.0/.github/workflows/coverage.yml +83 -0
  12. apex_ai-0.1.0/.github/workflows/dependabot-auto-merge.yml +33 -0
  13. apex_ai-0.1.0/.github/workflows/dependency-review.yml +21 -0
  14. apex_ai-0.1.0/.github/workflows/deploy-website.yml +60 -0
  15. apex_ai-0.1.0/.github/workflows/docker-ci.yml +78 -0
  16. apex_ai-0.1.0/.github/workflows/docs.yml +82 -0
  17. apex_ai-0.1.0/.github/workflows/install.yml +119 -0
  18. apex_ai-0.1.0/.github/workflows/labeler.yml +20 -0
  19. apex_ai-0.1.0/.github/workflows/link-check.yml +70 -0
  20. apex_ai-0.1.0/.github/workflows/markdown-lint.yml +47 -0
  21. apex_ai-0.1.0/.github/workflows/npm.yml +40 -0
  22. apex_ai-0.1.0/.github/workflows/opencode.yml +68 -0
  23. apex_ai-0.1.0/.github/workflows/performance.yml +135 -0
  24. apex_ai-0.1.0/.github/workflows/pr-checks.yml +130 -0
  25. apex_ai-0.1.0/.github/workflows/release-drafter.yml +23 -0
  26. apex_ai-0.1.0/.github/workflows/release.yml +351 -0
  27. apex_ai-0.1.0/.github/workflows/security.yml +122 -0
  28. apex_ai-0.1.0/.github/workflows/spellcheck.yml +30 -0
  29. apex_ai-0.1.0/.github/workflows/stale.yml +75 -0
  30. apex_ai-0.1.0/.github/workflows/tui.yml +96 -0
  31. apex_ai-0.1.0/.github/workflows/website.yml +85 -0
  32. apex_ai-0.1.0/.github/workflows/welcome.yml +38 -0
  33. apex_ai-0.1.0/LICENSE +74 -0
  34. apex_ai-0.1.0/MANIFEST.in +11 -0
  35. apex_ai-0.1.0/PKG-INFO +700 -0
  36. apex_ai-0.1.0/README.md +655 -0
  37. apex_ai-0.1.0/apex/__init__.py +214 -0
  38. apex_ai-0.1.0/apex/__main__.py +6 -0
  39. apex_ai-0.1.0/apex/advanced.py +251 -0
  40. apex_ai-0.1.0/apex/agent.py +896 -0
  41. apex_ai-0.1.0/apex/agents.py +750 -0
  42. apex_ai-0.1.0/apex/api_key.py +294 -0
  43. apex_ai-0.1.0/apex/apply_patch.py +1125 -0
  44. apex_ai-0.1.0/apex/auto_commit.py +239 -0
  45. apex_ai-0.1.0/apex/billing.py +346 -0
  46. apex_ai-0.1.0/apex/codegen.py +388 -0
  47. apex_ai-0.1.0/apex/commands.py +152 -0
  48. apex_ai-0.1.0/apex/commands_manager.py +272 -0
  49. apex_ai-0.1.0/apex/config.py +635 -0
  50. apex_ai-0.1.0/apex/config_tools.py +225 -0
  51. apex_ai-0.1.0/apex/config_v2.py +905 -0
  52. apex_ai-0.1.0/apex/context.py +206 -0
  53. apex_ai-0.1.0/apex/context_budget.py +254 -0
  54. apex_ai-0.1.0/apex/context_manager.py +169 -0
  55. apex_ai-0.1.0/apex/context_tracking.py +171 -0
  56. apex_ai-0.1.0/apex/cost_local.py +277 -0
  57. apex_ai-0.1.0/apex/extras.py +291 -0
  58. apex_ai-0.1.0/apex/formatter.py +322 -0
  59. apex_ai-0.1.0/apex/gateway/__init__.py +13 -0
  60. apex_ai-0.1.0/apex/gateway/auth.py +105 -0
  61. apex_ai-0.1.0/apex/gateway/config.py +112 -0
  62. apex_ai-0.1.0/apex/gateway/router.py +156 -0
  63. apex_ai-0.1.0/apex/gateway/server.py +138 -0
  64. apex_ai-0.1.0/apex/git_undo.py +172 -0
  65. apex_ai-0.1.0/apex/github_integration.py +234 -0
  66. apex_ai-0.1.0/apex/http_api.py +1878 -0
  67. apex_ai-0.1.0/apex/i18n.py +145 -0
  68. apex_ai-0.1.0/apex/install_manager.py +426 -0
  69. apex_ai-0.1.0/apex/lsp.py +289 -0
  70. apex_ai-0.1.0/apex/lsp_diagnostics.py +286 -0
  71. apex_ai-0.1.0/apex/main.py +2767 -0
  72. apex_ai-0.1.0/apex/mcp.py +362 -0
  73. apex_ai-0.1.0/apex/mcp_server.py +404 -0
  74. apex_ai-0.1.0/apex/memory.py +70 -0
  75. apex_ai-0.1.0/apex/mentions.py +164 -0
  76. apex_ai-0.1.0/apex/permission.py +204 -0
  77. apex_ai-0.1.0/apex/plugins.py +318 -0
  78. apex_ai-0.1.0/apex/project.py +309 -0
  79. apex_ai-0.1.0/apex/py.typed +0 -0
  80. apex_ai-0.1.0/apex/rate_limiter.py +239 -0
  81. apex_ai-0.1.0/apex/repomap.py +911 -0
  82. apex_ai-0.1.0/apex/rlm.py +251 -0
  83. apex_ai-0.1.0/apex/sandbox.py +200 -0
  84. apex_ai-0.1.0/apex/server.py +291 -0
  85. apex_ai-0.1.0/apex/session.py +300 -0
  86. apex_ai-0.1.0/apex/share.py +238 -0
  87. apex_ai-0.1.0/apex/shell_security.py +316 -0
  88. apex_ai-0.1.0/apex/skills.py +248 -0
  89. apex_ai-0.1.0/apex/skills_system.py +360 -0
  90. apex_ai-0.1.0/apex/slash.py +421 -0
  91. apex_ai-0.1.0/apex/snapshot.py +237 -0
  92. apex_ai-0.1.0/apex/structured_message.py +132 -0
  93. apex_ai-0.1.0/apex/task_queue.py +179 -0
  94. apex_ai-0.1.0/apex/telemetry.py +218 -0
  95. apex_ai-0.1.0/apex/theme_manager.py +894 -0
  96. apex_ai-0.1.0/apex/tools.py +3290 -0
  97. apex_ai-0.1.0/apex/ui.py +428 -0
  98. apex_ai-0.1.0/apex/vision.py +181 -0
  99. apex_ai-0.1.0/apex/watcher.py +356 -0
  100. apex_ai-0.1.0/apex/workspace.py +219 -0
  101. apex_ai-0.1.0/apex/workspace_rollback.py +190 -0
  102. apex_ai-0.1.0/apex_ai.egg-info/PKG-INFO +700 -0
  103. apex_ai-0.1.0/apex_ai.egg-info/SOURCES.txt +224 -0
  104. apex_ai-0.1.0/apex_ai.egg-info/dependency_links.txt +1 -0
  105. apex_ai-0.1.0/apex_ai.egg-info/entry_points.txt +2 -0
  106. apex_ai-0.1.0/apex_ai.egg-info/requires.txt +20 -0
  107. apex_ai-0.1.0/apex_ai.egg-info/top_level.txt +1 -0
  108. apex_ai-0.1.0/docs/adr/ADR-0001-rust-shell-security-lookahead.md +23 -0
  109. apex_ai-0.1.0/docs/adr/ADR-0002-rust-permission-init.md +21 -0
  110. apex_ai-0.1.0/docs/adr/ADR-0003-rust-rate-limiter-storage.md +21 -0
  111. apex_ai-0.1.0/docs/adr/ADR-0004-rust-distribution-deferred.md +40 -0
  112. apex_ai-0.1.0/docs/adr/ADR-0005-symbolic-repo-map.md +55 -0
  113. apex_ai-0.1.0/docs/adr/ADR-0006-mcp-server-stdio.md +54 -0
  114. apex_ai-0.1.0/docs/adr/ADR-0007-vscode-thin-client.md +53 -0
  115. apex_ai-0.1.0/docs/adr/ADR-0008-installation-refonte.md +77 -0
  116. apex_ai-0.1.0/docs/advanced.md +429 -0
  117. apex_ai-0.1.0/docs/agents.md +165 -0
  118. apex_ai-0.1.0/docs/api.md +729 -0
  119. apex_ai-0.1.0/docs/changelog.md +385 -0
  120. apex_ai-0.1.0/docs/commands.md +211 -0
  121. apex_ai-0.1.0/docs/configuration.md +52 -0
  122. apex_ai-0.1.0/docs/contributing.md +64 -0
  123. apex_ai-0.1.0/docs/ecc-agent-sort.md +242 -0
  124. apex_ai-0.1.0/docs/examples.md +426 -0
  125. apex_ai-0.1.0/docs/getting-started/configuration.md +55 -0
  126. apex_ai-0.1.0/docs/getting-started/installation.md +210 -0
  127. apex_ai-0.1.0/docs/getting-started/quickstart.md +45 -0
  128. apex_ai-0.1.0/docs/git-workflow.md +35 -0
  129. apex_ai-0.1.0/docs/guides/custom-agents.md +106 -0
  130. apex_ai-0.1.0/docs/guides/custom-commands.md +74 -0
  131. apex_ai-0.1.0/docs/guides/models.md +23 -0
  132. apex_ai-0.1.0/docs/guides/themes.md +83 -0
  133. apex_ai-0.1.0/docs/guides/tips.md +31 -0
  134. apex_ai-0.1.0/docs/guides/tools.md +98 -0
  135. apex_ai-0.1.0/docs/guides/tui.md +179 -0
  136. apex_ai-0.1.0/docs/index.md +94 -0
  137. apex_ai-0.1.0/docs/installation.md +95 -0
  138. apex_ai-0.1.0/docs/models.md +289 -0
  139. apex_ai-0.1.0/docs/plugins.md +173 -0
  140. apex_ai-0.1.0/docs/quickstart.md +147 -0
  141. apex_ai-0.1.0/docs/reference/api.md +103 -0
  142. apex_ai-0.1.0/docs/reference/cli.md +100 -0
  143. apex_ai-0.1.0/docs/reference/config.md +150 -0
  144. apex_ai-0.1.0/docs/reference/http-api.md +168 -0
  145. apex_ai-0.1.0/docs/reference/mcp-server.md +80 -0
  146. apex_ai-0.1.0/docs/reference/repomap.md +113 -0
  147. apex_ai-0.1.0/docs/reference/vscode.md +63 -0
  148. apex_ai-0.1.0/docs/tools.md +124 -0
  149. apex_ai-0.1.0/docs/troubleshooting.md +330 -0
  150. apex_ai-0.1.0/pyproject.toml +122 -0
  151. apex_ai-0.1.0/requirements.txt +8 -0
  152. apex_ai-0.1.0/setup.cfg +4 -0
  153. apex_ai-0.1.0/tests/test_advanced.py +352 -0
  154. apex_ai-0.1.0/tests/test_agent.py +399 -0
  155. apex_ai-0.1.0/tests/test_agent_coverage.py +830 -0
  156. apex_ai-0.1.0/tests/test_agent_full.py +460 -0
  157. apex_ai-0.1.0/tests/test_agent_more.py +545 -0
  158. apex_ai-0.1.0/tests/test_agents.py +1222 -0
  159. apex_ai-0.1.0/tests/test_api_key.py +515 -0
  160. apex_ai-0.1.0/tests/test_apply_patch.py +611 -0
  161. apex_ai-0.1.0/tests/test_auto_commit.py +219 -0
  162. apex_ai-0.1.0/tests/test_billing.py +798 -0
  163. apex_ai-0.1.0/tests/test_codegen.py +528 -0
  164. apex_ai-0.1.0/tests/test_codegen_full.py +242 -0
  165. apex_ai-0.1.0/tests/test_commands.py +193 -0
  166. apex_ai-0.1.0/tests/test_commands_manager.py +702 -0
  167. apex_ai-0.1.0/tests/test_config.py +446 -0
  168. apex_ai-0.1.0/tests/test_config_tools.py +360 -0
  169. apex_ai-0.1.0/tests/test_config_v2.py +996 -0
  170. apex_ai-0.1.0/tests/test_context.py +342 -0
  171. apex_ai-0.1.0/tests/test_context_budget.py +652 -0
  172. apex_ai-0.1.0/tests/test_context_budget_security.py +134 -0
  173. apex_ai-0.1.0/tests/test_context_manager.py +309 -0
  174. apex_ai-0.1.0/tests/test_context_tracking.py +377 -0
  175. apex_ai-0.1.0/tests/test_cost_local.py +384 -0
  176. apex_ai-0.1.0/tests/test_extras.py +536 -0
  177. apex_ai-0.1.0/tests/test_extras_full.py +117 -0
  178. apex_ai-0.1.0/tests/test_formatter.py +763 -0
  179. apex_ai-0.1.0/tests/test_git_undo.py +286 -0
  180. apex_ai-0.1.0/tests/test_github_integration.py +498 -0
  181. apex_ai-0.1.0/tests/test_http_api.py +2069 -0
  182. apex_ai-0.1.0/tests/test_http_api_security.py +529 -0
  183. apex_ai-0.1.0/tests/test_i18n.py +213 -0
  184. apex_ai-0.1.0/tests/test_install_manager.py +368 -0
  185. apex_ai-0.1.0/tests/test_lsp_diagnostics.py +329 -0
  186. apex_ai-0.1.0/tests/test_main.py +849 -0
  187. apex_ai-0.1.0/tests/test_main_full.py +427 -0
  188. apex_ai-0.1.0/tests/test_main_more.py +229 -0
  189. apex_ai-0.1.0/tests/test_mcp.py +400 -0
  190. apex_ai-0.1.0/tests/test_mcp_full.py +208 -0
  191. apex_ai-0.1.0/tests/test_mcp_server.py +281 -0
  192. apex_ai-0.1.0/tests/test_memory.py +286 -0
  193. apex_ai-0.1.0/tests/test_mentions.py +374 -0
  194. apex_ai-0.1.0/tests/test_modular_tools.py +287 -0
  195. apex_ai-0.1.0/tests/test_new_tools.py +384 -0
  196. apex_ai-0.1.0/tests/test_permission.py +677 -0
  197. apex_ai-0.1.0/tests/test_plugins_full.py +665 -0
  198. apex_ai-0.1.0/tests/test_project.py +424 -0
  199. apex_ai-0.1.0/tests/test_rate_limiter.py +595 -0
  200. apex_ai-0.1.0/tests/test_repomap.py +602 -0
  201. apex_ai-0.1.0/tests/test_rlm.py +636 -0
  202. apex_ai-0.1.0/tests/test_sandbox.py +324 -0
  203. apex_ai-0.1.0/tests/test_server.py +793 -0
  204. apex_ai-0.1.0/tests/test_session.py +384 -0
  205. apex_ai-0.1.0/tests/test_share.py +625 -0
  206. apex_ai-0.1.0/tests/test_shell_security.py +1015 -0
  207. apex_ai-0.1.0/tests/test_skills.py +293 -0
  208. apex_ai-0.1.0/tests/test_skills_system.py +274 -0
  209. apex_ai-0.1.0/tests/test_slash.py +293 -0
  210. apex_ai-0.1.0/tests/test_snapshot.py +266 -0
  211. apex_ai-0.1.0/tests/test_structured_message.py +229 -0
  212. apex_ai-0.1.0/tests/test_task_queue.py +188 -0
  213. apex_ai-0.1.0/tests/test_telemetry.py +231 -0
  214. apex_ai-0.1.0/tests/test_theme_manager.py +617 -0
  215. apex_ai-0.1.0/tests/test_tools.py +2539 -0
  216. apex_ai-0.1.0/tests/test_tools_comprehensive.py +338 -0
  217. apex_ai-0.1.0/tests/test_tools_coverage.py +1050 -0
  218. apex_ai-0.1.0/tests/test_tools_extended.py +262 -0
  219. apex_ai-0.1.0/tests/test_tools_full.py +338 -0
  220. apex_ai-0.1.0/tests/test_tools_more.py +202 -0
  221. apex_ai-0.1.0/tests/test_ui.py +390 -0
  222. apex_ai-0.1.0/tests/test_version_manifests.py +84 -0
  223. apex_ai-0.1.0/tests/test_vision.py +225 -0
  224. apex_ai-0.1.0/tests/test_watcher.py +627 -0
  225. apex_ai-0.1.0/tests/test_workspace.py +411 -0
  226. apex_ai-0.1.0/tests/test_workspace_rollback.py +282 -0
@@ -0,0 +1,6 @@
1
+ github: ggboykxz
2
+ open_collective: apex-agent
3
+ ko_fi: ggboykxz
4
+ custom:
5
+ - https://apex-agent.dev/sponsors
6
+ - https://github.com/sponsors/ggboykxz
@@ -0,0 +1,89 @@
1
+ name: Bug report
2
+ description: Report a reproducible defect in APEX
3
+ title: "[Bug]: "
4
+ labels: ["bug"]
5
+ body:
6
+ - type: markdown
7
+ attributes:
8
+ value: |
9
+ Thanks for taking the time to report a bug. Please search existing issues first.
10
+ For security vulnerabilities, do **not** open a public issue — follow `SECURITY.md`.
11
+
12
+ - type: textarea
13
+ id: what-happened
14
+ attributes:
15
+ label: What happened?
16
+ description: A clear and concise description of the defect.
17
+ placeholder: When I run `apex ...`, ...
18
+ validations:
19
+ required: true
20
+
21
+ - type: textarea
22
+ id: expected
23
+ attributes:
24
+ label: Expected behavior
25
+ description: What did you expect to happen instead?
26
+ validations:
27
+ required: true
28
+
29
+ - type: textarea
30
+ id: reproduction
31
+ attributes:
32
+ label: Steps to reproduce
33
+ description: Minimal, deterministic steps.
34
+ placeholder: |
35
+ 1. Install APEX ...
36
+ 2. Run `apex ...`
37
+ 3. Observe ...
38
+ validations:
39
+ required: true
40
+
41
+ - type: input
42
+ id: version
43
+ attributes:
44
+ label: APEX version
45
+ description: Output of `apex --version`.
46
+ placeholder: 2.0.0
47
+ validations:
48
+ required: true
49
+
50
+ - type: dropdown
51
+ id: surface
52
+ attributes:
53
+ label: Surface
54
+ options:
55
+ - CLI / Python backend
56
+ - TUI (tui-frontend)
57
+ - Rust port (apex-rs)
58
+ - Website / docs
59
+ - CI / tooling
60
+ validations:
61
+ required: true
62
+
63
+ - type: input
64
+ id: environment
65
+ attributes:
66
+ label: Environment
67
+ description: OS, Python version, terminal.
68
+ placeholder: Windows 11, Python 3.12, Windows Terminal
69
+ validations:
70
+ required: true
71
+
72
+ - type: textarea
73
+ id: logs
74
+ attributes:
75
+ label: Relevant logs
76
+ description: Paste logs with secrets removed. Never include API keys or tokens.
77
+ render: shell
78
+ validations:
79
+ required: false
80
+
81
+ - type: checkboxes
82
+ id: checks
83
+ attributes:
84
+ label: Checklist
85
+ options:
86
+ - label: I searched existing issues and this is not a duplicate.
87
+ required: true
88
+ - label: I removed API keys, tokens, and other secrets from logs.
89
+ required: true
@@ -0,0 +1,11 @@
1
+ blank_issues_enabled: false
2
+ contact_links:
3
+ - name: Security vulnerability
4
+ url: https://github.com/Ggboykxz/APEX/security/advisories/new
5
+ about: Report vulnerabilities privately. Do not open a public issue.
6
+ - name: Documentation
7
+ url: https://apex-ai.dev/docs
8
+ about: Installation, configuration, tools, and guides.
9
+ - name: Public roadmap
10
+ url: https://apex-ai.dev/roadmap
11
+ about: See what is shipped and what is planned for v2.5.
@@ -0,0 +1,72 @@
1
+ name: Feature request
2
+ description: Propose a capability or improvement for APEX
3
+ title: "[Feature]: "
4
+ labels: ["enhancement"]
5
+ body:
6
+ - type: markdown
7
+ attributes:
8
+ value: |
9
+ Thanks for the suggestion. Please check the public roadmap first:
10
+ https://apex-ai.dev/roadmap
11
+
12
+ - type: textarea
13
+ id: problem
14
+ attributes:
15
+ label: Problem
16
+ description: What user problem does this solve? Who is affected?
17
+ validations:
18
+ required: true
19
+
20
+ - type: textarea
21
+ id: solution
22
+ attributes:
23
+ label: Proposed solution
24
+ description: Describe the behavior you would like, including CLI/TUI/API surface.
25
+ validations:
26
+ required: true
27
+
28
+ - type: textarea
29
+ id: alternatives
30
+ attributes:
31
+ label: Alternatives considered
32
+ description: Existing workarounds or other designs you evaluated.
33
+ validations:
34
+ required: false
35
+
36
+ - type: dropdown
37
+ id: area
38
+ attributes:
39
+ label: Area
40
+ options:
41
+ - CLI / Python backend
42
+ - TUI (tui-frontend)
43
+ - Rust port (apex-rs)
44
+ - Website / docs
45
+ - Integrations (MCP, VS Code)
46
+ - CI / tooling
47
+ validations:
48
+ required: true
49
+
50
+ - type: dropdown
51
+ id: milestone
52
+ attributes:
53
+ label: Roadmap alignment
54
+ options:
55
+ - v2.5 M1 — Repository Map & Context
56
+ - v2.5 M2 — Rust GA (internal)
57
+ - v2.5 M3 — TUI Streaming & Diff
58
+ - v2.5 M4 — MCP, Vision, VS Code
59
+ - Post-v2.5
60
+ - Not sure
61
+ validations:
62
+ required: true
63
+
64
+ - type: checkboxes
65
+ id: checks
66
+ attributes:
67
+ label: Checklist
68
+ options:
69
+ - label: I searched existing issues and this is not a duplicate.
70
+ required: true
71
+ - label: I checked the public roadmap.
72
+ required: true
@@ -0,0 +1,112 @@
1
+ # Dependabot configuration for APEX
2
+ # Auto dependency updates across all ecosystems
3
+
4
+ version: 2
5
+
6
+ updates:
7
+ # Python pip dependencies
8
+ - package-ecosystem: pip
9
+ directory: /
10
+ schedule:
11
+ interval: weekly
12
+ day: monday
13
+ time: "06:00"
14
+ timezone: UTC
15
+ open-pull-requests-limit: 10
16
+ reviewers:
17
+ - Ggboykxz
18
+ labels:
19
+ - dependencies
20
+ - python
21
+ commit-message:
22
+ prefix: chore
23
+ prefix-development: chore
24
+ include: scope
25
+ rebase-strategy: auto
26
+
27
+ # npm dependencies — Next.js frontend (src/)
28
+ - package-ecosystem: npm
29
+ directory: /
30
+ schedule:
31
+ interval: weekly
32
+ day: monday
33
+ time: "06:00"
34
+ timezone: UTC
35
+ open-pull-requests-limit: 10
36
+ reviewers:
37
+ - Ggboykxz
38
+ labels:
39
+ - dependencies
40
+ - website
41
+ commit-message:
42
+ prefix: chore
43
+ prefix-development: chore
44
+ include: scope
45
+ rebase-strategy: auto
46
+ ignore:
47
+ - dependency-name: "next"
48
+ update-types: [version-update:semver-major]
49
+ - dependency-name: "react"
50
+ - dependency-name: "react-dom"
51
+ - dependency-name: "typescript"
52
+ - dependency-name: "eslint"
53
+
54
+ # npm dependencies — TUI frontend (tui-frontend/)
55
+ - package-ecosystem: npm
56
+ directory: /tui-frontend
57
+ schedule:
58
+ interval: weekly
59
+ day: monday
60
+ time: "06:00"
61
+ timezone: UTC
62
+ open-pull-requests-limit: 10
63
+ reviewers:
64
+ - Ggboykxz
65
+ labels:
66
+ - dependencies
67
+ - tui
68
+ commit-message:
69
+ prefix: chore
70
+ prefix-development: chore
71
+ include: scope
72
+ rebase-strategy: auto
73
+
74
+ # GitHub Actions
75
+ - package-ecosystem: github-actions
76
+ directory: /
77
+ schedule:
78
+ interval: weekly
79
+ day: monday
80
+ time: "06:00"
81
+ timezone: UTC
82
+ open-pull-requests-limit: 10
83
+ reviewers:
84
+ - Ggboykxz
85
+ labels:
86
+ - dependencies
87
+ - ci
88
+ commit-message:
89
+ prefix: ci
90
+ prefix-development: ci
91
+ include: scope
92
+ rebase-strategy: auto
93
+
94
+ # Docker base images
95
+ - package-ecosystem: docker
96
+ directory: /
97
+ schedule:
98
+ interval: weekly
99
+ day: monday
100
+ time: "06:00"
101
+ timezone: UTC
102
+ open-pull-requests-limit: 10
103
+ reviewers:
104
+ - Ggboykxz
105
+ labels:
106
+ - dependencies
107
+ - docker
108
+ commit-message:
109
+ prefix: chore
110
+ prefix-development: chore
111
+ include: scope
112
+ rebase-strategy: auto
@@ -0,0 +1,53 @@
1
+ # Auto-label configuration for APEX PRs
2
+ # Used by actions/labeler@v5
3
+
4
+ python:
5
+ - changed-files:
6
+ - any-glob-to-any-file:
7
+ - apex/**
8
+ - tests/**
9
+ - "*.py"
10
+ - pyproject.toml
11
+ - requirements.txt
12
+
13
+ website:
14
+ - changed-files:
15
+ - any-glob-to-any-file:
16
+ - src/**
17
+ - public/**
18
+ - package.json
19
+ - bun.lock
20
+ - tailwind.config.ts
21
+ - next.config.ts
22
+ - tsconfig.json
23
+ - eslint.config.mjs
24
+ - postcss.config.mjs
25
+ - components.json
26
+
27
+ tui:
28
+ - changed-files:
29
+ - any-glob-to-any-file:
30
+ - tui-frontend/**
31
+ - tui-frontend/package.json
32
+ - tui-frontend/tsconfig.json
33
+
34
+ docs:
35
+ - changed-files:
36
+ - any-glob-to-any-file:
37
+ - docs/**
38
+ - "*.md"
39
+ - mkdocs.yml
40
+
41
+ ci:
42
+ - changed-files:
43
+ - any-glob-to-any-file:
44
+ - .github/**
45
+ - .github/workflows/**
46
+ - .github/dependabot.yml
47
+
48
+ docker:
49
+ - changed-files:
50
+ - any-glob-to-any-file:
51
+ - Dockerfile
52
+ - docker-compose*
53
+ - .dockerignore
@@ -0,0 +1,129 @@
1
+ # Release Drafter configuration for APEX
2
+
3
+ name-template: "v$RESOLVED_VERSION"
4
+ tag-template: "v$RESOLVED_VERSION"
5
+ template: |
6
+ ## APEX v$RESOLVED_VERSION
7
+
8
+ The universal AI coding agent. Every model. One terminal.
9
+
10
+ ### Changes
11
+
12
+ $CHANGES
13
+
14
+ ### Installation
15
+
16
+ ```bash
17
+ # pip (recommended)
18
+ pip install apex-ai==$RESOLVED_VERSION
19
+
20
+ # pipx (isolated)
21
+ pipx install apex-ai==$RESOLVED_VERSION
22
+
23
+ # uv (fastest)
24
+ uv tool install apex-ai==$RESOLVED_VERSION
25
+
26
+ # Installer (macOS/Linux)
27
+ curl -fsSLO https://apex-ai.dev/install.sh
28
+ bash install.sh
29
+
30
+ # Installer (Windows PowerShell)
31
+ Invoke-WebRequest https://apex-ai.dev/install.ps1 -OutFile install.ps1
32
+ powershell -ExecutionPolicy Bypass -File .\install.ps1
33
+ ```
34
+
35
+ ### Native backend (headless, opt-in)
36
+
37
+ Verified release assets ship for Linux (x86_64/aarch64), macOS
38
+ (x86_64/aarch64) and Windows (x86_64), each with a `.sha256` sidecar:
39
+
40
+ ```bash
41
+ bash install.sh --method native --version $RESOLVED_VERSION
42
+ ```
43
+
44
+ ### Docker
45
+
46
+ ```bash
47
+ docker pull ghcr.io/ggboykxz/apex:$RESOLVED_VERSION
48
+ docker run -it -v $(pwd):/workspace ghcr.io/ggboykxz/apex
49
+ ```
50
+
51
+ ### Quick Start
52
+
53
+ ```bash
54
+ export ANTHROPIC_API_KEY=sk-ant-...
55
+ apex # Interactive mode
56
+ apex --model gpt-4o # Start with GPT-4o
57
+ apex --model ollama-llama3 # Local, no API key
58
+ ```
59
+
60
+ **Full Changelog**: https://github.com/Ggboykxz/APEX/compare/$PREVIOUS_TAG...v$RESOLVED_VERSION
61
+
62
+ categories:
63
+ - title: "🚀 Features"
64
+ labels:
65
+ - feature
66
+ - enhancement
67
+ - feat
68
+ - title: "🐛 Bug Fixes"
69
+ labels:
70
+ - bug
71
+ - fix
72
+ - bugfix
73
+ - title: "📚 Documentation"
74
+ labels:
75
+ - documentation
76
+ - docs
77
+ - title: "♻️ Refactoring"
78
+ labels:
79
+ - refactor
80
+ - refactoring
81
+ - title: "⚡ Performance"
82
+ labels:
83
+ - perf
84
+ - performance
85
+ - title: "🧪 Tests"
86
+ labels:
87
+ - test
88
+ - tests
89
+ - title: "🔧 CI/CD"
90
+ labels:
91
+ - ci
92
+ - build
93
+ - title: "🎫 Chores"
94
+ labels:
95
+ - chore
96
+ - dependencies
97
+ - title: "🔒 Security"
98
+ labels:
99
+ - security
100
+
101
+ label-template: "$TITLE @$AUTHOR (#$NUMBER)"
102
+
103
+ change-template: "- $TITLE @$AUTHOR (#$NUMBER)"
104
+ change-title-escapes: '\<*_&'
105
+
106
+ version-resolver:
107
+ major:
108
+ labels:
109
+ - breaking
110
+ - major
111
+ minor:
112
+ labels:
113
+ - feature
114
+ - enhancement
115
+ - feat
116
+ patch:
117
+ labels:
118
+ - bug
119
+ - fix
120
+ - bugfix
121
+ - security
122
+ - chore
123
+ - dependencies
124
+ default: patch
125
+
126
+ exclude-labels:
127
+ - skip-changelog
128
+ - stale
129
+ - wontfix
@@ -0,0 +1,60 @@
1
+ name: Dependency Audit
2
+
3
+ on:
4
+ schedule:
5
+ - cron: "0 5 * * 1" # Every Monday at 05:00 UTC
6
+ workflow_dispatch:
7
+ push:
8
+ branches: [main]
9
+ paths:
10
+ - "package.json"
11
+ - "package-lock.json"
12
+ - "tui-frontend/package.json"
13
+ - "tui-frontend/package-lock.json"
14
+ - "requirements.txt"
15
+ - "pyproject.toml"
16
+ - ".github/workflows/audit.yml"
17
+
18
+ permissions:
19
+ contents: read
20
+
21
+ jobs:
22
+ audit:
23
+ name: Audit dependencies
24
+ runs-on: ubuntu-latest
25
+ steps:
26
+ - uses: actions/checkout@v6
27
+
28
+ - uses: actions/setup-node@v6
29
+ with:
30
+ node-version: "24"
31
+ cache: npm
32
+ cache-dependency-path: |
33
+ package-lock.json
34
+ tui-frontend/package-lock.json
35
+
36
+ - uses: actions/setup-python@v6
37
+ with:
38
+ python-version: "3.12"
39
+ cache: pip
40
+ cache-dependency-path: requirements.txt
41
+
42
+ - name: npm audit (website)
43
+ run: npm audit --omit=dev
44
+ continue-on-error: true
45
+
46
+ - name: npm audit (TUI)
47
+ working-directory: tui-frontend
48
+ run: npm audit --omit=dev
49
+ continue-on-error: true
50
+
51
+ - name: Install pip-audit
52
+ run: pip install pip-audit
53
+
54
+ - name: pip-audit (requirements)
55
+ run: pip-audit -r requirements.txt
56
+ continue-on-error: true
57
+
58
+ - name: pip-audit (pyproject)
59
+ run: pip-audit -r <(python -c "import tomllib, pathlib; d=tomllib.loads(pathlib.Path('pyproject.toml').read_text()); print('\n'.join(d['project']['dependencies']))")
60
+ continue-on-error: true
@@ -0,0 +1,137 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main, dev]
6
+ pull_request:
7
+ branches: [main]
8
+ merge_group:
9
+
10
+ concurrency:
11
+ group: ci-${{ github.ref }}
12
+ cancel-in-progress: true
13
+
14
+ jobs:
15
+ lint:
16
+ name: Lint (Python ${{ matrix.python-version }})
17
+ runs-on: ubuntu-latest
18
+ strategy:
19
+ matrix:
20
+ python-version: ["3.11", "3.12", "3.13"]
21
+ steps:
22
+ - uses: actions/checkout@v6
23
+
24
+ - uses: actions/setup-python@v6
25
+ with:
26
+ python-version: ${{ matrix.python-version }}
27
+ cache: pip
28
+
29
+ - name: Install dependencies
30
+ run: |
31
+ python -m pip install --upgrade pip
32
+ pip install ruff==0.9.10 mypy
33
+ pip install -e ".[dev]" || pip install -e .
34
+
35
+ - name: Ruff lint
36
+ run: ruff check apex/ tests/ --output-format=github
37
+
38
+ - name: Ruff format check
39
+ run: ruff format --check apex/ tests/
40
+
41
+ - name: Type check
42
+ run: mypy apex/ --ignore-missing-imports
43
+ continue-on-error: true
44
+
45
+ test:
46
+ name: Test (Python ${{ matrix.python-version }})
47
+ runs-on: ubuntu-latest
48
+ strategy:
49
+ fail-fast: false
50
+ matrix:
51
+ python-version: ["3.11", "3.12", "3.13"]
52
+
53
+ steps:
54
+ - uses: actions/checkout@v6
55
+
56
+ - uses: actions/setup-python@v6
57
+ with:
58
+ python-version: ${{ matrix.python-version }}
59
+ cache: pip
60
+
61
+ - name: Install dependencies
62
+ run: |
63
+ python -m pip install --upgrade pip
64
+ pip install -e ".[dev]" || pip install -e .
65
+
66
+ - name: Run tests
67
+ run: pytest --tb=short -q --junitxml=test-results.xml
68
+ env:
69
+ CI: "true"
70
+
71
+ - name: Test summary
72
+ if: always()
73
+ run: |
74
+ echo "=== Test Results ==="
75
+ if [ -f test-results.xml ]; then
76
+ echo "Test results generated"
77
+ else
78
+ echo "Warning: No test results file"
79
+ fi
80
+
81
+ - name: Upload test results
82
+ if: always()
83
+ uses: actions/upload-artifact@v4
84
+ with:
85
+ name: test-results-py${{ matrix.python-version }}
86
+ path: test-results.xml
87
+
88
+ rust:
89
+ name: Rust (fmt, clippy, test)
90
+ runs-on: ubuntu-latest
91
+ defaults:
92
+ run:
93
+ working-directory: rust/apex-rs
94
+ steps:
95
+ - uses: actions/checkout@v6
96
+
97
+ - uses: dtolnay/rust-toolchain@stable
98
+ with:
99
+ components: rustfmt, clippy
100
+
101
+ - name: Cache cargo
102
+ uses: actions/cache@v6
103
+ with:
104
+ path: |
105
+ ~/.cargo/registry
106
+ ~/.cargo/git
107
+ rust/apex-rs/target
108
+ key: ${{ runner.os }}-cargo-${{ hashFiles('rust/apex-rs/Cargo.lock') }}
109
+ restore-keys: ${{ runner.os }}-cargo-
110
+
111
+ - name: Format check
112
+ run: cargo fmt --all -- --check
113
+
114
+ - name: Clippy
115
+ run: cargo clippy --all-targets -- -D warnings
116
+
117
+ - name: Tests
118
+ run: cargo test
119
+
120
+ build-check:
121
+ name: Build check (sdist + wheel)
122
+ runs-on: ubuntu-latest
123
+ needs: [lint, test, rust]
124
+ steps:
125
+ - uses: actions/checkout@v6
126
+
127
+ - uses: actions/setup-python@v6
128
+ with:
129
+ python-version: "3.12"
130
+
131
+ - name: Build package
132
+ run: |
133
+ pip install build twine
134
+ python -m build
135
+
136
+ - name: Check package
137
+ run: twine check dist/*