The GitHub trending page this week is dominated by AI agent tooling, but tucked between the skills and plugins are a few projects that genuinely change how developers work. Apple shipped the 1.0 release of its own container runtime for macOS. A new compression tool is cutting LLM token consumption by up to 95%. NVIDIA open-sourced a security scanner for AI agent skills. Microsoft’s document-to-Markdown converter keeps gaining traction. And an open-source NotebookLM alternative is letting researchers self-host their AI-powered notebooks.
Here are five repositories worth your attention this week.
1. apple/container — Apple’s Container Runtime for macOS Hits 1.0
apple/container is a tool for creating and running Linux containers as lightweight virtual machines on Mac. Written in Swift and optimized for Apple silicon, it reached its 1.0.0 release this week — marking exactly one year since the project went public.
The most interesting addition in 1.0 is the new container machine feature, which provides long-lived Linux environments with tight host integration. Think of it as a way to maintain a persistent Linux development environment on your Mac without the overhead of a full VM or the complexity of a remote server. Alongside it comes a new TOML-based configuration file replacing the previous UserDefaults-backed system settings, container cp for copying files between host and containers, and a --stop-signal option for more control over container lifecycle.
The project consumes and produces OCI-compatible container images, so you can pull from standard registries like Docker Hub and GHCR. It uses the underlying Containerization Swift package for low-level container, image, and process management. It requires macOS 26, taking advantage of new virtualization and networking features in that release.
# Install from the GitHub releases page, then start the service
container system start
# Pull and run any OCI-compatible image
container pull ubuntu:latest
container run ubuntu:latest echo "Hello from Linux on macOS"
If you develop on a Mac and need Linux containers without Docker Desktop, this is now a mature, first-party option from Apple itself.
2. chopratejas/headroom — Compress Everything Before It Reaches Your LLM
headroom is a context compression layer that sits between your AI agent and the LLM provider. It compresses tool outputs, logs, RAG chunks, and conversation history — claiming 60–95% token reduction while preserving accuracy. The tool runs entirely locally, so your data never leaves your machine.
It works through three main components: a ContentRouter that detects content type and selects the right compressor, specialized algorithms for different formats (SmartCrusher for JSON, CodeCompressor using AST analysis, and Kompress-base for prose using a custom HuggingFace model), and a CacheAligner that stabilizes prefixes to help provider KV caches actually hit. When the compressed content isn’t enough, the LLM can call a retrieval tool to fetch the original via their Cacheable Compression Retrieval (CCR) system.
What makes headroom practical is its deployment flexibility. You can use it as a Python or TypeScript library, as a drop-in proxy server that requires zero code changes, or via an MCP server. It wraps directly into coding agents with a single command.
# Install
pip install "headroom-ai[all]"
# Wrap Claude Code — zero code changes
headroom wrap claude
# Or run as a proxy for any OpenAI-compatible client
headroom proxy --port 8787
# Check your savings
headroom perf
Their benchmarks show strong results: 92% compression on code search results, 92% on SRE incident debugging logs, and 73% on GitHub issue triage — all while maintaining accuracy on standard benchmarks like GSM8K (math), TruthfulQA (factual), and SQuAD v2 (question answering). If you’re paying per token for LLM usage, the savings add up fast.
3. NVIDIA/SkillSpector — Security Scanning for AI Agent Skills
SkillSpector addresses a growing security problem in the AI agent ecosystem. Claude Code skills, Codex CLI configurations, and Gemini CLI instructions all execute with high-level access to your system. According to research cited by NVIDIA, 26.1% of publicly available AI agent skills contain vulnerabilities, and 5.2% show likely malicious intent.
SkillSpector scans skills before you install them, checking for 64 vulnerability patterns across 16 categories including prompt injection, data exfiltration, privilege escalation, supply chain attacks, memory poisoning, and MCP tool poisoning. It runs in two stages: a fast static analysis pass that catches structural issues, and an optional LLM-powered semantic evaluation that can identify subtle malicious patterns that pure static analysis would miss.
The tool supports scanning Git repos, URLs, zip files, directories, or individual SKILL.md files. Output formats include terminal, JSON, Markdown, and SARIF — the latter being important for CI/CD integration and IDE tooling. It also integrates with OSV.dev for live vulnerability lookups, with automatic offline fallback.
# Clone and install
git clone https://github.com/NVIDIA/skillspector.git
cd skillspector
make install
# Scan a local skill directory
skillspector scan ./my-skill/
# Scan a skill from GitHub
skillspector scan https://github.com/user/skill-repo
# Static-only scan (no LLM needed)
skillspector scan ./my-skill/ --no-llm
# Export SARIF for CI/CD
skillspector scan ./my-skill/ --format sarif --output report.sarif
If you’re installing community-built skills into Claude Code, Codex CLI, or similar tools, running them through SkillSpector first is a sensible security practice.
4. microsoft/markitdown — Convert Any Document to Markdown
MarkItDown is a Python utility from Microsoft’s AutoGen team that converts files to Markdown — PDF, PowerPoint, Word, Excel, images (with OCR and EXIF metadata), audio (with speech transcription), HTML, CSV, JSON, XML, ZIP archives, YouTube URLs, and EPubs. It’s focused on preserving document structure — headings, lists, tables, links — in a format that LLMs natively understand.
The tool is straightforward to use. Install it, point it at a file, and get Markdown out. Optional dependencies are organized by file type, so you only install what you need. A plugin system lets you extend it for custom formats — the markitdown-ocr plugin, for example, adds OCR support for embedded images in PDFs and Office documents using LLM Vision, without requiring additional ML libraries.
from markitdown import MarkItDown
# Basic conversion
md = MarkItDown()
result = md.convert("report.pdf")
print(result.text_content)
# With OCR plugin and LLM Vision for images
md = MarkItDown(
enable_plugins=True,
llm_client=OpenAI(),
llm_model="gpt-4o",
)
result = md.convert("scanned_document.pdf")
print(result.text_content)
It also integrates with Azure Content Understanding for higher-quality extraction with structured field extraction — useful when you need domain-specific fields like invoice amounts or contract clauses serialized as YAML front matter. The CLI is equally simple: markitdown path-to-file.pdf -o output.md.
If you’re building RAG pipelines, document ingestion workflows, or any system that feeds documents into LLMs, MarkItDown handles the format conversion layer well.
5. lfnovo/open-notebook — Self-Host Your Own NotebookLM
Open Notebook is an open-source, privacy-focused alternative to Google’s NotebookLM. It lets you upload multi-modal content — PDFs, videos, audio, web pages — and interact with it through AI-powered chat, search, and podcast generation. The entire thing runs on your own infrastructure.
The key differentiator is flexibility. It supports 18+ AI providers including OpenAI, Anthropic, Ollama, LM Studio, Groq, and more, so you’re not locked into a single vendor. You can run everything locally with Ollama for zero API costs, or use whichever cloud provider gives you the best price-to-performance ratio. The podcast generation feature supports 1–4 speakers with custom profiles, compared to Google’s 2-speaker limit.
Built with Python, Next.js, React, and SurrealDB, it ships as a Docker Compose stack. You can go from zero to a running instance in under two minutes.
# docker-compose.yml
services:
surrealdb:
image: surrealdb/surrealdb:v2
command: start --log info --user root --pass root rocksdb:/mydata/mydatabase.db
ports:
- "8000:8000"
volumes:
- ./surreal_data:/mydata
open_notebook:
image: lfnovo/open_notebook:v1-latest
ports:
- "8502:8502"
environment:
- OPEN_NOTEBOOK_ENCRYPTION_KEY=your-secret-key
- SURREAL_URL=ws://surrealdb:8000/rpc
- SURREAL_USER=root
- SURREAL_PASSWORD=root
volumes:
- ./notebook_data:/app/data
depends_on:
- surrealdb
It provides a full REST API for automation, full-text and vector search across all your content, and a multi-language UI. For researchers, analysts, or anyone working with sensitive documents who wants the NotebookLM experience without uploading data to Google, this is the most complete open-source option available.
Wrapping Up
This week’s trending repos reflect a maturing ecosystem around AI agents. apple/container reaching 1.0 shows Apple getting serious about the developer container story. headroom addresses the real cost problem of LLM context windows. SkillSpector tackles the security blind spot in agent skill installation. MarkItDown continues to be the go-to tool for document-to-Markdown conversion. And Open Notebook proves that you don’t need to give up privacy to get AI-powered research tools.