alex s and GitHub
995059cd87
fix: ensure LLM stats tracking is accurate by including completed subagents ( #441 )
2026-04-13 00:09:13 -04:00
Ahmed Allam and GitHub
800bb0ccc8
Add Strix GitHub Actions integration tip
2026-04-12 12:43:41 -07:00
STJ and GitHub
db459db6e3
feat: Migrate from Poetry to uv ( #379 )
2026-03-31 17:20:41 -07:00
alex s and GitHub
5320880e78
feat: Better source-aware testing ( #391 )
2026-03-31 11:53:49 -07:00
0xallam and Ahmed Allam
1a4a356721
chore: bump version to 0.8.3
2026-03-22 22:10:17 -07:00
0xallam and Ahmed Allam
ff1db26989
fix: use anthropic model in anthropic provider docs example
2026-03-22 22:08:20 -07:00
0xallam and Ahmed Allam
12c39c52d6
fix: strengthen tool-call requirement in interactive and autonomous modes
...
Models occasionally output text-only narration ("Planning the
assessment...") without a tool call, which halts the interactive agent
loop since the system interprets no-tool-call as "waiting for user
input." Rewrite both interactive and autonomous prompt sections to make
the tool-call requirement absolute with explicit warnings about the
system halt consequence.
2026-03-22 22:08:20 -07:00
0xallam and Ahmed Allam
214abbbdcd
chore: bump sandbox image to 0.1.13
2026-03-22 22:08:20 -07:00
0xallam and Ahmed Allam
216d884653
refine system prompt, add scope verification, and improve tool guidance
...
- Rewrite system prompt: refusal avoidance, system-verified scope, thorough
validation mandate, root agent orchestration role, recon-first guidance
- Add authorized targets injection via system_prompt_context in strix_agent
- Add set_system_prompt_context to LLM for dynamic prompt updates
- Prefer python tool over terminal for Python code in tool schemas
- Increase LLM retry backoff cap to 90s
- Replace models.strix.ai footer with strix.ai
2026-03-22 22:08:20 -07:00
0xallam and Ahmed Allam
9f5ceaafa3
chore: update default model to gpt-5.4 and remove Strix Router from docs
...
- Change default model from gpt-5 to gpt-5.4 across docs, tests, and examples
- Remove Strix Router references from docs, quickstart, overview, and README
- Delete models.mdx (Strix Router page) and its nav entry
- Simplify install script to suggest openai/ prefix directly
- Keep strix/ model routing support intact in code
2026-03-22 22:08:20 -07:00
Ahmed Allam
d04240a51b
Simplify tool file copying in Dockerfile
...
Removed specific tool files from Dockerfile and added a directory copy instead.
2026-03-22 16:01:39 -07:00
0xallam and Ahmed Allam
09fac5be81
fix: address review feedback on tool registration gating
2026-03-19 23:50:57 -07:00
0xallam and Ahmed Allam
29d44b82d0
refactor: move tool availability checks into registration
2026-03-19 23:50:57 -07:00
Ahmed Allam and GitHub
8ca8b2a832
Guard TUI chat rendering against invalid Rich spans ( #375 )
2026-03-19 22:28:42 -07:00
Ahmed Allam and GitHub
f15bfa0d83
fix: prevent ScreenStackError when stopping agent from modal ( #374 )
2026-03-19 20:39:05 -07:00
262f59147e
feat: add skills for specific tools ( #366 )
...
Co-authored-by: 0xallam <ahmed39652003@gmail.com >
2026-03-19 16:47:29 -07:00
Ahmed Allam
1905159468
Add tip about Strix integration with GitHub Actions
2026-03-17 22:14:11 -07:00
0xallam and Ahmed Allam
e787265875
feat: add interactive mode for agent loop
...
Re-architects the agent loop to support interactive (chat-like) mode
where text-only responses pause execution and wait for user input,
while tool-call responses continue looping autonomously.
- Add `interactive` flag to LLMConfig (default False, no regression)
- Add configurable `waiting_timeout` to AgentState (0 = disabled)
- _process_iteration returns None for text-only → agent_loop pauses
- Conditional system prompt: interactive allows natural text responses
- Skip <meta>Continue the task.</meta> injection in interactive mode
- Sub-agents inherit interactive from parent (300s auto-resume timeout)
- Root interactive agents wait indefinitely for user input (timeout=0)
- TUI sets interactive=True; CLI unchanged (non_interactive=True)
2026-03-14 11:57:58 -07:00
0xallam and Ahmed Allam
b3455938a1
fix: web_search tool not loading when API key is in config file
...
The perplexity API key check in strix/tools/__init__.py used
Config.get() which only checks os.environ. At import time, the
config file (~/.strix/cli-config.json) hasn't been applied to
env vars yet, so the check always returned False.
Replace with _has_perplexity_api() that checks os.environ first
(fast path for SaaS/env var), then falls back to Config.load()
which reads the config file directly.
2026-03-14 11:48:45 -07:00
Ahmed Allam
67a4aa03af
Update web search model name to 'sonar-reasoning-pro'
2026-03-11 14:20:04 -07:00
Alex and Ahmed Allam
3e3453852a
Change VERTEXAI_LOCATION from 'us-central1' to 'global'
...
us-central1 doesn't have access to the latest gemini models like gemini-3-flash-preview
2026-03-11 08:08:18 -07:00
508e473633
Add OpenTelemetry observability with local JSONL traces ( #347 )
...
Co-authored-by: 0xallam <ahmed39652003@gmail.com >
2026-03-09 01:11:24 -07:00
0xallam and GitHub
8a6723cb7e
chore(deps): bump pypdf from 6.7.4 to 6.7.5 ( #343 )
2026-03-08 09:46:32 -07:00
Ms6RB and GitHub
8a5670bed0
feat(skills): add NestJS security testing module ( #348 )
2026-03-08 09:45:08 -07:00
0xallam and Ahmed Allam
8ae631e452
chore(deps): bump pypdf from 6.7.2 to 6.7.4
...
Bumps [pypdf](https://github.com/py-pdf/pypdf ) from 6.7.2 to 6.7.4.
- [Release notes](https://github.com/py-pdf/pypdf/releases )
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md )
- [Commits](https://github.com/py-pdf/pypdf/compare/6.7.2...6.7.4 )
---
updated-dependencies:
- dependency-name: pypdf
dependency-version: 6.7.4
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-02 15:34:01 -08:00
Ahmed Allam and GitHub
f183a8719c
Update README
2026-03-03 03:33:46 +04:00
Ahmed Allam and GitHub
f7fa94a524
Update models.mdx
2026-03-03 03:33:14 +04:00
octovimmer and Ahmed Allam
5d2cd22652
chore: remove references of codex models
2026-03-02 15:29:29 -08:00
octovimmer and Ahmed Allam
0a3d139ced
chore: remove codex models from supported models
2026-03-02 15:29:29 -08:00
0xallam and Ahmed Allam
aaaf8c366e
chore(deps): bump pypdf from 6.7.1 to 6.7.2
...
Bumps [pypdf](https://github.com/py-pdf/pypdf ) from 6.7.1 to 6.7.2.
- [Release notes](https://github.com/py-pdf/pypdf/releases )
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md )
- [Commits](https://github.com/py-pdf/pypdf/compare/6.7.1...6.7.2 )
---
updated-dependencies:
- dependency-name: pypdf
dependency-version: 6.7.2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-26 14:58:52 -08:00
0xallam
1caaf7a7b0
docs: Add Strix Platform and Enterprise sections to README
2026-02-26 14:58:28 -08:00
0xallam
97a044fc45
docs: Add human-in-the-loop section to proxy documentation
2026-02-23 19:54:54 -08:00
0xallam
42a7882c85
chore: Bump version to 0.8.2
2026-02-23 18:41:06 -08:00
0xallam and Ahmed Allam
ae8f740c4a
feat: Expose Caido proxy port to host for human-in-the-loop interaction
...
Users can now access the Caido web UI from their browser to inspect traffic,
replay requests, and perform manual testing alongside the automated scan.
- Map Caido port (48080) to a random host port in DockerRuntime
- Add caido_port to SandboxInfo and track across container lifecycle
- Display Caido URL in TUI sidebar stats panel with selectable text
- Bind Caido to 0.0.0.0 in entrypoint (requires image rebuild)
- Bump sandbox image to 0.1.12
- Restore discord link in exit screen
2026-02-23 18:37:25 -08:00
mason5052 and Ahmed Allam
047d035a37
docs: fix Discord badge expired invite code
...
The badge image URL used invite code which is expired,
causing the badge to render 'Invalid invite' instead of the server info.
Updated to use the vanity URL which resolves correctly.
Fixes #313
2026-02-22 20:52:03 -08:00
0xallam and Ahmed Allam
e15e79acb4
chore(deps): bump google-cloud-aiplatform from 1.129.0 to 1.133.0
...
Bumps [google-cloud-aiplatform](https://github.com/googleapis/python-aiplatform ) from 1.129.0 to 1.133.0.
- [Release notes](https://github.com/googleapis/python-aiplatform/releases )
- [Changelog](https://github.com/googleapis/python-aiplatform/blob/main/CHANGELOG.md )
- [Commits](https://github.com/googleapis/python-aiplatform/compare/v1.129.0...v1.133.0 )
---
updated-dependencies:
- dependency-name: google-cloud-aiplatform
dependency-version: 1.133.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-22 20:51:29 -08:00
0xallam
1b66dbc63f
fix: Lower sidebar min width from 140 to 120 for smaller terminals
2026-02-22 09:28:52 -08:00
0xallam
1cfa600050
fix: Update end screen to display models.strix.ai instead of strix.ai and discord
2026-02-22 09:03:56 -08:00
Ahmed Allam and GitHub
9db8f3d596
Update installation instructions
...
Removed pipx installation instructions for strix-agent.
2026-02-22 00:10:06 +04:00
0xallam
6cf0e59ca2
chore: Bump version to 0.8.1
2026-02-20 10:36:48 -08:00
0xallam
23607e4cb3
fix: Change default model from claude-sonnet-4-6 to gpt-5 across docs and code
2026-02-20 10:35:58 -08:00
0xallam and Ahmed Allam
d5166ad363
fix: Handle stray quotes in tag names and enforce parameter tags in prompt
2026-02-20 08:29:01 -08:00
0xallam and Ahmed Allam
1382e5d173
fix: Address code review feedback on tool format normalization
2026-02-20 08:29:01 -08:00
0xallam and Ahmed Allam
75e7c6455d
fix: Prevent assistant-message prefill rejected by Claude 4.6
2026-02-20 08:29:01 -08:00
0xallam and Ahmed Allam
8eb7ca3a6c
fix: Handle single-quoted and whitespace-padded tool call tags
2026-02-20 08:29:01 -08:00
0xallam and Ahmed Allam
addc1d4ef4
fix: Strip quotes from parameter/function names in tool calls
2026-02-20 08:29:01 -08:00
0xallam and Ahmed Allam
a71a83d5ae
feat: Normalize alternative tool call formats (invoke/function_calls)
2026-02-20 08:29:01 -08:00
Ahmed Allam and GitHub
c091585c31
Resolve LLM API Base and Models ( #317 )
2026-02-20 07:14:10 -08:00
0xallam
a3dc2ca438
fix: Strip custom_llm_provider before cost lookup for proxied models
2026-02-20 06:52:27 -08:00
0xallam
8b516e8373
refactor: Centralize strix model resolution with separate API and capability names
...
- Replace fragile prefix matching with explicit STRIX_MODEL_MAP
- Add resolve_strix_model() returning (api_model, canonical_model)
- api_model (openai/ prefix) for API calls to OpenAI-compatible Strix API
- canonical_model (actual provider name) for litellm capability lookups
- Centralize resolution in LLMConfig instead of scattered call sites
2026-02-20 04:40:04 -08:00