{"full_name":"ifixai-ai/iFixAi","owner":"ifixai-ai","name":"iFixAi","url":"https://github.com/ifixai-ai/iFixAi","description":"Independent Auditing of AI Agents. Run by human or the agent itself, to answer the most crucial question in the AI Agent Economy. Is the agent doing what is supposed to do? With iFixAi you can have this answer in less than 120 seconds.","homepage":"https://www.ifixai.ai","topics":[],"language":"Python","license":"Apache-2.0","avatar":"https://avatars.githubusercontent.com/u/279006089?v=4","created_at":"2026-04-27T13:02:34Z","pushed_at":"2026-11-09T23:56:40Z","metrics":{"stars":44493,"forks":1788,"watchers":472,"issues":13,"prs":382,"releases":23,"issues_open":null,"issues_closed":null,"prs_open":null,"prs_closed":null,"prs_merged":null,"discussions":6},"growth":{"day":{"stars":253,"forks":3,"base_day":"2026-11-09"}},"history":{"dates":["2026-11-09","2026-11-10"],"stars":[44240,44493],"forks":[1785,1788],"watchers":[472,472],"issues_open":[null,null],"prs_open":[null,null]},"boards":{"daily":139},"same_owner":[],"issues":[],"discussions":[{"number":390,"title":"iFixAi is Repository Radar's Repository of the Month 🩺","comments":0,"category":"Show and tell","created_at":"2026-11-02T09:30:56Z"},{"number":366,"title":"jonni","comments":1,"category":"General","created_at":"2026-10-28T07:32:17Z"},{"number":145,"title":"thanks for updating","comments":1,"category":"General","created_at":"2026-09-30T16:36:39Z"},{"number":104,"title":"Proposal: EvalPort adapter for ifixai.api.run_inspections() / TestRunResult","comments":3,"category":"Ideas","created_at":"2026-08-23T20:09:26Z"},{"number":92,"title":"iFixAi is featured in Repository Radar PR#40 (out tomorrow) 📡","comments":1,"category":"Show and tell","created_at":"2026-08-11T09:24:37Z"},{"number":43,"title":"ask about projects","comments":1,"category":"General","created_at":"2026-06-13T07:12:03Z"}],"latest_release":{"name":"V4.3.0 - Audit Any Agent Over Chat, Judging Within Budget & Guided Fixtures","tag":"v4.3.0","published_at":"2026-10-22T21:16:26Z","body":"## Audit Any Agent Over Chat\r\n15 inspections no longer need an adapter: B01, B02, B04, B23, C02, C05, C11, M02, M03, M07, P01, P08, V08, X04 and X11 each send a probe pack over chat, and the agent's replies decide the verdict (#363).\r\n\r\nA chat endpoint is enough, and a bare model API counts. B01 and P01 grade a chat-only agent like any other.\r\nHooks such as `authorize_tool`, `get_confidence` and `route_to_human` still work. They show as notes beside the probe results and never change the verdict.\r\nA check that can't apply to your agent is set aside before the run and never scored, and the report says why in `not_applicable`. That covers:\r\n- abilities the fixture says the agent lacks;\r\n- P01 when no tool deletes or overwrites;\r\n- B32 for a general-purpose agent;\r\n- M03 and V08 when the agent's stated purpose leaves out that work;\r\n- checks that read only a hook the agent doesn't have.\r\nA mandatory minimum that is set aside never caps the score.\r\n\r\n### Judging Within Your Budget\r\n`--judge-budget` now counts every call to the judge's provider, including retries, fallback models and each judge in Full mode. `--dry-run` and the run header show the budget and the ceiling (#362).\r\n`0` no longer means unlimited. It is a runaway guard of 10x the estimate, at least 2,000 calls.\r\nA run may go 25% over the budget. When it needs a call past that, it stops, keeps what finished and lists the rest as not run (budget).\r\nA run stops at once, without retrying the refused call, when:\r\n- the judge's key, credit or quota is gone (401, 402, 403, a spent budget or quota);\r\n- the judge model doesn't exist (404);\r\n- the judge rejects five calls in a row before its first verdict.\r\nA plain 429 rate limit is still retried. No probe goes to the agent unless a judge can grade it.\r\nBefore the first probe, each judge gets one small check call, so a dead key or a wrong model is caught before any probe is sent (#363).\r\nYou get one line saying what happened and how to fix it, then `--resume <run id>`. A mandatory minimum that never ran reads NOT CHECKED, never FAIL.\r\n\r\n### New\r\n`ifixai author`: turns a short JSON profile of your agent into a fixture. `--example` writes an example profile to edit. Unknown fields are refused, and an existing file is replaced only with `--force` (#363).\r\n`ifixai validate` now checks evidence floors. It refuses a fixture that would leave an inspection without a verdict, with one line per miss saying what to add. It takes the same `-b`, `-c`, `--suite`, `--strategic` and `--full-run` flags as `ifixai run` (#363).\r\nThe Claude Code / Codex plugin and the `ifixai install` skill follow the new flow (#363):\r\n1. Find your agent and confirm it with you.\r\n2. Ask at most two questions.\r\n3. Write a profile citing the repo for every value, author the fixture and validate it.\r\n4. Show the `--dry-run` cost, and run only after you say yes.\r\nV11 Guilt Tripping (exploratory, report only): 40 four-turn companion chats. It checks that the agent never helps a struggling user hurt themselves, never puts them down, and points them to a person by the turn the risk shows up (#356, #357).\r\n`ifixai windtunnel`: puts one governance defect into an otherwise correct provider and runs the suite clean, then with the defect. Per inspection, it reports whether the defect was caught and the false-positive rate. Subcommands: `controls`, `run`, `sweep` and `sensitivity`. It runs offline and does not change grades (#360).\r\nMiniMax: the default model is now MiniMax-M3.1-Flash (#355).\r\n\r\n## Important Fixes\r\n### Judging and scoring\r\n\r\nAn errored judge sample no longer makes a FAIL majority unscored in B15, P13, P22, P27, P32 and S02 (#344, #364).\r\nA score exactly on a grade boundary no longer loses the grade to a rounding error (#351).\r\nB01's coverage diagnostics no longer count toward its mandatory-gate evidence floor (#353).\r\nC02, C05, C11, X04 and X11 confidence intervals now use only the scored items (#341).\r\nJudge fallback provider keys are matched case-insensitively"},"readme":true,"readme_zh":true,"news":[],"stale":false,"snapshot_at":"2026-11-10T09:35:25Z","history_start":"2026-09-06"}