
Security News
arXiv Is Rate Limiting Authors Following a Flood of AI Slop Submissions
arXiv now limits authors to two submissions a month as AI slop overwhelms moderators, delays good papers, and sparks debate over applying the limit to everyone.
A general-purpose, model-agnostic agent harness for the terminal, with tools loaded on demand, skills, MCP and multi-agent orchestration.
A general-purpose agent harness for any model, in one terminal application with no runtime dependencies.
Give a model controlled access to your files, shell, browser, documents and services, and let it carry
a task through to a verified result.
MaskShift connects a language model to the tools it needs to get real work done — reading and writing files, running commands, browsing the web, working with PDFs and notebooks, querying databases, calling MCP servers, remembering what matters and delegating to sub-agents — and keeps a person in control with checkpoints, an audit log and optional approvals.
It works for software engineering, but nothing about it is specific to code: summarize a folder of invoices into a spreadsheet, research a topic and write up the findings, reorganize files, run a recurring report. The model is a line of configuration; the tools are the same whichever one you use.
maskshift model calibrate, refined by how it actually performs, and raised mid-run if it keeps
stumbling. A strong model is left alone; a small local one gets a compact prompt, a short tool menu
and tight output budgets. → adaptive harnessmaskshift mcp serve to expose MaskShift's own tools to Claude Desktop, an IDE or another agent.maskshift bench run scores a model on self-checking tasks — pass rate, turns,
tokens per solved task — and can switch individual helpers off to show what each one is worth.Other agent harnesses are strong at what they were built for. This table lists only the things MaskShift adds that those tools do not ship as built-in features.
| MaskShift | Claude Code | Codex CLI | OpenCode | Gemini CLI | Aider | |
|---|---|---|---|---|---|---|
| Measures each model with probes and sizes its help to what it can do | ✅ | — | — | — | — | — |
| Raises the level of help mid-run when a model keeps stumbling | ✅ | — | — | — | — | — |
| Built-in benchmark that switches individual harness helpers off to measure their value | ✅ | — | — | — | — | — |
| Token usage split by cause: turns, repairs, verification retries, compaction, hand-offs | ✅ | — | — | — | — | — |
| Skill changes promoted only after recorded A/B trials show uplift without regressions | ✅ | — | — | — | — | — |
| Memory that cites files by content hash and goes stale when they change | ✅ | — | — | — | — | — |
| Full tool use on models with no native tool-calling API | ✅ | — | — | — | — | — |
| Live, clickable browser view rendered inside the terminal | ✅ | — | — | — | — | — |
| Drives other agent CLIs (Claude Code, Codex, Hermes, OpenCode…) as a team that messages itself, from one interface | ✅ | — | — | — | — | — |
Based on each project's public documentation as of October 2026. "—" means not a built-in, documented feature; plugins, hooks, MCP servers or third-party wrappers may add something similar. The table is deliberately limited to MaskShift's differences — the other tools have strengths of their own, such as IDE and desktop integration, that are not listed here. If a row is out of date, please open an issue.
Requires Node.js 22 or newer and a terminal of at least 80×24 (UTF-8 and truecolor are used when available and degrade cleanly when not). Git and ripgrep are recommended.
npm install -g maskshift
cd ~/Documents && maskshift
Or run it without installing: npx maskshift --workspace ~/Documents.
From source (there is no npm install step, because there is nothing to install):
git clone https://github.com/nafeeur/MaskShift.git
cd MaskShift
./start.sh --workspace ~/Documents # or ./install.sh to link ~/.local/bin/maskshift
Choose a model. The default, ollama:auto, discovers your installed Ollama models and picks the
strongest one it finds; cloud providers read their keys from the environment.
ollama pull qwen3:8b # a local model
export ANTHROPIC_API_KEY=... # or OPENAI_API_KEY, GEMINI_API_KEY, OPENROUTER_API_KEY
export MASKSHIFT_MODEL=anthropic:<model-id> # provider:model, e.g. ollama:qwen3:8b
Open the interface in a folder and type a request, or run one task headlessly:
maskshift --workspace ~/Documents
maskshift run "Total the Q3 invoices in ./Invoices by vendor and write q3-by-vendor.xlsx" \
--workspace ~/Documents --model anthropic:<model-id>
Press ctrl+k for the command palette and f2 for settings. Settings live in
~/.maskshift/config.json. → configuration reference
maskshift opens a full-screen terminal application, driven equally by keyboard and mouse. Seven views
switch with 1–7; ctrl+b toggles the sidebar.
| View | Holds |
|---|---|
| Chat | The conversation and composer — markdown, syntax-highlighted code, coloured diffs and live tool calls |
| Files | The workspace tree with a preview; images render inline |
| Capabilities | Every tool, skill, MCP server, plugin in one searchable catalogue |
| Runtime | A host shell, automations, background processes and browser instances |
| Browser | A live, clickable view of a running browser tab |
| Git | Changes, history, branches, stash, checkpoints and worktrees |
| Fleet | A team of Claude Code, Codex, OpenCode, Hermes and other agents: members, their messages, relays and installed harnesses |
Capabilities — see what a run can reach before it uses it | Approvals — review a command before it runs, in balanced or review mode |
Files — the workspace tree with a preview | Command palette — every action, searchable |
Below 108 columns the sidebar hides itself so the same views work in a narrow split pane.
NO_COLOR, MASKSHIFT_COLOR=off and MASKSHIFT_ASCII=1 each produce a clean, aligned fallback, and
MASKSHIFT_MOUSE=off hands text selection back to the terminal. → keys and views
Everything the interface does is also a subcommand, and every subcommand accepts --json:
maskshift run "Draft an agenda for a two-day offsite" # one headless run, streamed
maskshift automation create weekly --schedule "every 7d" --prompt "Summarize this week's notes"
maskshift tools run web_search '{"query":"node 22 release notes"}'
maskshift model calibrate --model ollama:qwen3:8b # measure a model, then size help to it
maskshift bench run --model ollama:qwen3:8b # score it on the benchmark tasks
maskshift mcp serve # MaskShift as an MCP server
maskshift doctor # environment and provider checks
Global flags: --workspace PATH, --model REF, --config PATH, --json, --no-color.
→ full command reference
MaskShift runs with the authority of your account. The default autonomous mode never prompts, so recovery relies on automatic checkpoints, the audit log and the stop control; balanced asks before high-risk actions (shell execution, installs, destructive operations, outbound actions); review asks before anything that is not read-only. Content from files, web pages and tool results is treated as data, never as instructions. A container limits MaskShift to what is mounted into it. → permissions · security policy
| Document | Covers |
|---|---|
| Configuration | Settings, providers, MCP, hooks, automations and data locations |
| Tools · Skills | The native tool inventory and bundled skills |
| Interface | Keys, views and the design system |
| Command line | Every subcommand and flag |
| Architecture | The agent loop, the adaptive harness, persistence and extension points |
| Web tasks | Page options, pickers, terminal sign-in, hand-offs and what stays private |
| Permissions | The three modes, what stays observable and where the limits are |
| Verification · Release checks | What the automated suite covers |
npm run verify # syntax check + unit/integration tests + end-to-end smoke test
npm run docs # regenerate the tool and skill inventories
npm run capture # regenerate docs/screenshots from the real renderer
CONTRIBUTING.md lists what changes are held to. The plugin in
examples/plugins/telemetry-pack is a complete worked example, and the
bundled plugin-authoring and skill-creator skills cover the rest of the extension surface.
To run the scheduler without an interface, use deploy/maskshift.service (a user-level systemd unit)
or the Dockerfile / compose.yaml (docker run -it; mount /workspace and /data).
FAQs
A general-purpose, model-agnostic agent harness for the terminal, with tools loaded on demand, skills, MCP and multi-agent orchestration.
The npm package maskshift receives a total of 176 weekly downloads. As such, maskshift popularity was classified as not popular.
We found that maskshift demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
arXiv now limits authors to two submissions a month as AI slop overwhelms moderators, delays good papers, and sparks debate over applying the limit to everyone.

Research
/Security News
A new GhostAction wave hits hundreds of GitHub repos, expanding CI/CD secret theft to cloud and AI credentials in source code and git history.

Research
/Security News
Tensorlake npm SDK version 0.5.144 was compromised in a ChainDrop / Shai-Hulud attack, delivering credential-stealing malware.