<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Skelf Research Blog</title><description>Research articles from Skelf Research — an independent AI research lab investigating machine reasoning, computational intelligence, and safe AI systems.</description><link>https://skelfresearch.com/</link><language>en-gb</language><item><title>compere: Multi-Armed Bandit Ranking with Fewer Comparisons</title><link>https://skelfresearch.com/blog/cross-cutting/compere-vs-bradley-terry/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/compere-vs-bradley-terry/</guid><description>How compere uses bandit algorithms to rank items with minimal pairwise comparisons — applications in search evaluation, recommendation, and tournament design, vs Bradley-Terry and TrueSkill.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>formal-optimisation</category><category>multi-armed-bandit</category><category>MAB</category><category>Bradley-Terry</category><category>TrueSkill</category><category>Elo</category><category>ranking</category><category>compere</category><category>comparison</category></item><item><title>embedcache vs Redis vs GPTCache: Caching for Embedding Computations</title><link>https://skelfresearch.com/blog/cross-cutting/embedcache-vs-redis/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/embedcache-vs-redis/</guid><description>A practical comparison of embedcache, Redis vector cache, and GPTCache for eliminating redundant embedding recomputation in RAG pipelines.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>caching</category><category>embeddings</category><category>Redis</category><category>GPTCache</category><category>RAG</category><category>embedcache</category><category>comparison</category></item><item><title>l0l1 vs Text2SQL Tools: A Privacy-Preserving SQL Co-Pilot for Your Own Database</title><link>https://skelfresearch.com/blog/cross-cutting/l0l1-vs-text2sql/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/l0l1-vs-text2sql/</guid><description>A practical comparison of l0l1 with generic Text2SQL tools — when the privacy guarantee matters, when the learning from query patterns matters, and when a vanilla LLM SQL bridge is enough.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>SQL</category><category>Text2SQL</category><category>copilot</category><category>data-analysis</category><category>privacy</category><category>l0l1</category><category>comparison</category></item><item><title>llamafu vs llama.rn vs flutter_llama_cpp: On-Device LLM for Flutter in 2026</title><link>https://skelfresearch.com/blog/cross-cutting/llamafu-vs-llama-rn/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/llamafu-vs-llama-rn/</guid><description>A practical comparison of llamafu, llama.rn, and flutter_llama_cpp for running LLMs on Flutter — what each does well, what each doesn&apos;t, and which to pick.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>edge-intelligence</category><category>on-device</category><category>llama.cpp</category><category>Flutter</category><category>mobile</category><category>llamafu</category><category>llama.rn</category><category>comparison</category></item><item><title>memista vs Pinecone vs Qdrant vs Chroma: Do You Need a Vector Database?</title><link>https://skelfresearch.com/blog/cross-cutting/memista-vs-pinecone/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/memista-vs-pinecone/</guid><description>A practical comparison of memista, Pinecone, Qdrant, Weaviate, Milvus, and Chroma for vector search — and why the answer is usually &apos;no, you need SQLite&apos;.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>vector-search</category><category>Pinecone</category><category>Qdrant</category><category>Weaviate</category><category>Milvus</category><category>Chroma</category><category>LanceDB</category><category>SQLite</category><category>memista</category><category>ANN</category><category>comparison</category></item><item><title>mullama vs Ollama vs vLLM: Choosing a Local LLM Server in 2026</title><link>https://skelfresearch.com/blog/cross-cutting/mullama-vs-ollama/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/mullama-vs-ollama/</guid><description>A practical comparison of mullama, Ollama, vLLM, LocalAI, and LM Studio for local LLM serving — when to use which, and why you might pick the research-instrumented option.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>Ollama</category><category>vLLM</category><category>LocalAI</category><category>LM Studio</category><category>mullama</category><category>llama.cpp</category><category>local-llm</category><category>comparison</category></item><item><title>perishable vs Cloudflare API Gateway vs HashiCorp Vault: Short-Lived Credentials for LLMs</title><link>https://skelfresearch.com/blog/cross-cutting/perishable-vs-cloudflare-vault/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/perishable-vs-cloudflare-vault/</guid><description>A practical comparison of perishable, Cloudflare API Gateway, and HashiCorp Vault for ephemeral LLM API credentials — when zero-trust LLM access needs its own purpose-built tooling, and when a general-purpose solution is enough.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>zero-trust</category><category>ephemeral-credentials</category><category>Cloudflare</category><category>Vault</category><category>API-gateway</category><category>perishable</category><category>LLM-security</category><category>comparison</category></item><item><title>polymathy vs Haystack vs LangChain: Building RAG Pipelines in Rust</title><link>https://skelfresearch.com/blog/cross-cutting/polymathy-vs-langchain/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/polymathy-vs-langchain/</guid><description>A practical comparison of polymathy, Haystack, and LangChain for building RAG pipelines — when you want a Rust-native async chunking + embedding service, and when the Python frameworks are still the right answer.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>RAG</category><category>Haystack</category><category>LangChain</category><category>LlamaIndex</category><category>polymathy</category><category>Rust</category><category>embedding-pipeline</category><category>comparison</category></item><item><title>route-switch vs LiteLLM vs Portkey vs OpenRouter: LLM Routing in 2026</title><link>https://skelfresearch.com/blog/cross-cutting/route-switch-vs-litellm/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/route-switch-vs-litellm/</guid><description>A practical comparison of route-switch, LiteLLM, Portkey, and OpenRouter for LLM routing — when you need a gateway, when you need a learned router, and when you need both.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>LLM routing</category><category>LiteLLM</category><category>Portkey</category><category>OpenRouter</category><category>MIPROv2</category><category>cost-quality</category><category>route-switch</category><category>comparison</category></item><item><title>savanty: Bridging Natural Language and Mathematical Solvers in 2026</title><link>https://skelfresearch.com/blog/cross-cutting/savanty-vs-nl2opt/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/savanty-vs-nl2opt/</guid><description>How savanty turns English problem descriptions into mathematically guaranteed solutions. The case for LLM-to-formal-solver pipelines over pure LLM output.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>formal-optimisation</category><category>constraint-satisfaction</category><category>SMT solver</category><category>Z3</category><category>OR-Tools</category><category>MiniZinc</category><category>Gurobi</category><category>savanty</category><category>NL2OPT</category><category>comparison</category></item><item><title>Skelf Research: The Independent Lab That Ships Research as Code</title><link>https://skelfresearch.com/blog/cross-cutting/skelf-vs-big-tech/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/skelf-vs-big-tech/</guid><description>How Skelf Research compares to Big Tech AI labs, AI startups, and individual researchers — what &apos;independent AI research lab publishing open-source software&apos; means in 2026, and why the methodology is the moat.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>cross-cutting</category><category>AI research lab</category><category>open source</category><category>open science</category><category>independent research</category><category>hypotheses as software</category><category>Skelf Research</category><category>comparison</category></item><item><title>slorg vs Algolia vs Meilisearch vs Typesense: Deliberative vs Traditional Search</title><link>https://skelfresearch.com/blog/cross-cutting/slorg-vs-algolia/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/slorg-vs-algolia/</guid><description>A practical comparison of slorg, Algolia, Meilisearch, and Typesense for search — when deliberative search (reasoning before retrieval) is the right answer, and when traditional search is still the right answer.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>edge-intelligence</category><category>search</category><category>Algolia</category><category>Meilisearch</category><category>Typesense</category><category>Elasticsearch</category><category>deliberative-search</category><category>agentic-search</category><category>slorg</category><category>comparison</category></item><item><title>ukkin vs ChatGPT Operator vs Anthropic Computer Use: On-Device vs Cloud AI Agents</title><link>https://skelfresearch.com/blog/cross-cutting/ukkin-vs-operator/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/ukkin-vs-operator/</guid><description>A practical comparison of ukkin, ChatGPT Operator, and Anthropic Computer Use for autonomous mobile and desktop AI agents — privacy, autonomy, and the on-device vs cloud trade-off.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>edge-intelligence</category><category>agents</category><category>mobile</category><category>autonomy</category><category>ChatGPT Operator</category><category>Anthropic Computer Use</category><category>ukkin</category><category>on-device</category><category>comparison</category></item><item><title>waremax: Deterministic Warehouse-Robotics Simulation for RL Research</title><link>https://skelfresearch.com/blog/cross-cutting/waremax-vs-rawsim/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/waremax-vs-rawsim/</guid><description>How waremax gives warehouse-robotics research a deterministic simulator, a Gymnasium RL interface, and instrumented delay attribution. Why deterministic beats plausible for reproducible research.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>robotics</category><category>warehouse-robotics</category><category>RMFS</category><category>AMR</category><category>RAWSim-O</category><category>ARENA-Sim</category><category>deterministic-simulation</category><category>Gymnasium</category><category>MaskablePPO</category><category>waremax</category><category>comparison</category></item><item><title>zviz vs gVisor vs Firecracker: Choosing a Sandbox for AI-Generated Code</title><link>https://skelfresearch.com/blog/cross-cutting/zviz-vs-gvisor/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/zviz-vs-gvisor/</guid><description>A practical comparison of zviz, gVisor, and Firecracker for sandboxing untrusted AI-generated code — performance, security, and operational trade-offs.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>sandboxing</category><category>gVisor</category><category>Firecracker</category><category>WASM</category><category>untrusted-code</category><category>zviz</category><category>comparison</category></item><item><title>memorg vs Mem0: Structured Memory vs Vector Memory for LLM Agents</title><link>https://skelfresearch.com/blog/cross-cutting/memorg-vs-mem0/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/memorg-vs-mem0/</guid><description>A practical comparison of memorg and Mem0 for agent memory — when structured schemas beat vector recall, when they don&apos;t, and how to combine them.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>memory</category><category>agents</category><category>Mem0</category><category>Letta</category><category>Zep</category><category>structured-memory</category><category>comparison</category></item><item><title>mpl vs MCP: A Compliance and Audit Layer on Top of the Agent Protocol</title><link>https://skelfresearch.com/blog/cross-cutting/mpl-vs-mcp/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/mpl-vs-mcp/</guid><description>MCP defines how agents talk. mpl defines what correct looks like. Why production agentic systems need both — and how to compose them.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>MCP</category><category>A2A</category><category>agent-protocol</category><category>compliance</category><category>audit</category><category>comparison</category></item><item><title>promptel vs DSPy: Declarative Specification vs Programmatic Compilation</title><link>https://skelfresearch.com/blog/cross-cutting/promptel-vs-dspy/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/promptel-vs-dspy/</guid><description>A practical comparison of promptel and DSPy for prompt engineering — when to use a declarative specification language, when to use a programmatic compiler, and how they compose.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>prompts</category><category>DSPy</category><category>declarative</category><category>prompt-optimization</category><category>compilers</category><category>comparison</category></item><item><title>Programmable Databases: Why We Built liath Twice</title><link>https://skelfresearch.com/blog/safe-computing/programmable-databases-why-we-built-liath-twice/</link><guid isPermaLink="true">https://skelfresearch.com/blog/safe-computing/programmable-databases-why-we-built-liath-twice/</guid><description>The story of building a Lua-native database in Lua, then rewriting it in Rust with RocksDB — and what the performance tells us.</description><pubDate>Sat, 04 Apr 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>database</category><category>lua</category><category>rust</category><category>RocksDB</category><category>storage-engines</category></item><item><title>Deliberative Search: When the Engine Reasons Before It Retrieves</title><link>https://skelfresearch.com/blog/edge-intelligence/deliberative-search/</link><guid isPermaLink="true">https://skelfresearch.com/blog/edge-intelligence/deliberative-search/</guid><description>Why traditional search retrieves first and ranks later — and how slorg inverts this by understanding intent before fetching results.</description><pubDate>Thu, 02 Apr 2026 00:00:00 GMT</pubDate><category>edge-intelligence</category><category>search</category><category>SvelteKit</category><category>reasoning</category><category>intent</category><category>retrieval</category></item><item><title>Persistent Memory for Long-Running Agents</title><link>https://skelfresearch.com/blog/llm-cognition/persistent-memory-for-agents/</link><guid isPermaLink="true">https://skelfresearch.com/blog/llm-cognition/persistent-memory-for-agents/</guid><description>What happens when LLM agents need to remember across sessions — structured memory schemas, retrieval strategies, and the memory-context distinction.</description><pubDate>Wed, 01 Apr 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>memory</category><category>agents</category><category>retrieval</category><category>architecture</category></item><item><title>Vector Search Without the Cloud: memista&apos;s SQLite-Backed ANN</title><link>https://skelfresearch.com/blog/safe-computing/vector-search-without-the-cloud/</link><guid isPermaLink="true">https://skelfresearch.com/blog/safe-computing/vector-search-without-the-cloud/</guid><description>Building approximate nearest-neighbour search on SQLite in pure Rust — and why you might not need a dedicated vector database.</description><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>vector-search</category><category>SQLite</category><category>ANN</category><category>embeddings</category><category>rust</category></item><item><title>Ephemeral Credentials and Zero-Trust AI: Rethinking API Security</title><link>https://skelfresearch.com/blog/cross-cutting/ephemeral-credentials-zero-trust-ai/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/ephemeral-credentials-zero-trust-ai/</guid><description>Why AI agents need scoped, time-limited credentials — and how perishable implements zero-trust patterns for LLM API access.</description><pubDate>Wed, 25 Mar 2026 00:00:00 GMT</pubDate><category>cross-cutting</category><category>security</category><category>zero-trust</category><category>credentials</category><category>API</category><category>agents</category></item><item><title>Prompt Lifecycle Management: From Extraction to Deployment</title><link>https://skelfresearch.com/blog/llm-cognition/prompt-lifecycle-management/</link><guid isPermaLink="true">https://skelfresearch.com/blog/llm-cognition/prompt-lifecycle-management/</guid><description>A practical framework for managing prompts as versioned dependencies — tackling drift, regression, and reproducibility.</description><pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>prompts</category><category>versioning</category><category>devops</category><category>reproducibility</category></item><item><title>Better Rankings with Fewer Comparisons: Multi-Armed Bandits for Efficient Ordering</title><link>https://skelfresearch.com/blog/formal-optimisation/better-rankings-fewer-comparisons/</link><guid isPermaLink="true">https://skelfresearch.com/blog/formal-optimisation/better-rankings-fewer-comparisons/</guid><description>How compere uses MAB algorithms to rank items effectively with minimal pairwise feedback — applications in search and recommendation.</description><pubDate>Thu, 19 Mar 2026 00:00:00 GMT</pubDate><category>formal-optimisation</category><category>MAB</category><category>ranking</category><category>bandits</category><category>recommendation</category><category>search</category></item><item><title>Formalising Prompts as First-Class Research Objects</title><link>https://skelfresearch.com/blog/llm-cognition/formalising-prompts-as-first-class-objects/</link><guid isPermaLink="true">https://skelfresearch.com/blog/llm-cognition/formalising-prompts-as-first-class-objects/</guid><description>Why treating prompts as typed, portable artefacts changes how we reason about LLM behaviour — and how promptel implements this idea.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>prompts</category><category>formal-methods</category><category>specification</category><category>portability</category></item><item><title>From English to Optimal: How savanty Bridges Natural Language and Constraint Solvers</title><link>https://skelfresearch.com/blog/formal-optimisation/from-english-to-optimal/</link><guid isPermaLink="true">https://skelfresearch.com/blog/formal-optimisation/from-english-to-optimal/</guid><description>Describe optimisation problems in plain English and receive mathematically guaranteed solutions — no PhD required.</description><pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate><category>formal-optimisation</category><category>NLP</category><category>constraint-satisfaction</category><category>solvers</category><category>optimisation</category></item><item><title>Intelligent LLM Routing: Spending Compute Where It Matters</title><link>https://skelfresearch.com/blog/llm-cognition/intelligent-llm-routing/</link><guid isPermaLink="true">https://skelfresearch.com/blog/llm-cognition/intelligent-llm-routing/</guid><description>How route-switch uses MIPROv2 to automatically select the right model for each query — balancing cost, quality, and latency.</description><pubDate>Sun, 08 Mar 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>routing</category><category>MIPROv2</category><category>cost-optimisation</category><category>model-selection</category></item><item><title>Autonomous Mobile Agents: ukkin&apos;s Architecture for On-Device AI</title><link>https://skelfresearch.com/blog/edge-intelligence/autonomous-mobile-agents/</link><guid isPermaLink="true">https://skelfresearch.com/blog/edge-intelligence/autonomous-mobile-agents/</guid><description>Building AI agents that browse, observe, and automate tasks entirely on-device — the autonomy-safety spectrum on mobile.</description><pubDate>Thu, 05 Mar 2026 00:00:00 GMT</pubDate><category>edge-intelligence</category><category>agents</category><category>mobile</category><category>autonomy</category><category>flutter</category><category>automation</category></item><item><title>Building mullama: What We Learned Replacing Ollama from Scratch</title><link>https://skelfresearch.com/blog/llm-cognition/building-mullama/</link><guid isPermaLink="true">https://skelfresearch.com/blog/llm-cognition/building-mullama/</guid><description>A post-mortem on building a local LLM serving layer — llama.cpp integration, model management, and where existing tools constrain research.</description><pubDate>Sat, 28 Feb 2026 00:00:00 GMT</pubDate><category>llm-cognition</category><category>llama.cpp</category><category>inference</category><category>local-llm</category><category>architecture</category></item><item><title>Running Language Models on Your Phone: The llamafu Experiment</title><link>https://skelfresearch.com/blog/edge-intelligence/running-language-models-on-your-phone/</link><guid isPermaLink="true">https://skelfresearch.com/blog/edge-intelligence/running-language-models-on-your-phone/</guid><description>What happens when you run a full LLM on mobile hardware with zero cloud dependency — memory, latency, and model quality on consumer devices.</description><pubDate>Wed, 25 Feb 2026 00:00:00 GMT</pubDate><category>edge-intelligence</category><category>mobile</category><category>llama.cpp</category><category>flutter</category><category>on-device</category><category>inference</category></item><item><title>Sandboxing Untrusted Code in Zig: The zviz Architecture</title><link>https://skelfresearch.com/blog/safe-computing/sandboxing-untrusted-code-in-zig/</link><guid isPermaLink="true">https://skelfresearch.com/blog/safe-computing/sandboxing-untrusted-code-in-zig/</guid><description>How zviz uses Zig&apos;s comptime capabilities to build gVisor-inspired sandboxing with near-zero runtime cost.</description><pubDate>Sat, 21 Feb 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>zig</category><category>sandboxing</category><category>gVisor</category><category>security</category><category>comptime</category></item><item><title>Why We Write AI Infrastructure in Rust (and Zig, and Go)</title><link>https://skelfresearch.com/blog/safe-computing/why-we-write-ai-infrastructure-in-rust/</link><guid isPermaLink="true">https://skelfresearch.com/blog/safe-computing/why-we-write-ai-infrastructure-in-rust/</guid><description>Language choice as research methodology — how memory-safe, deterministic-performance languages produce falsifiable systems claims.</description><pubDate>Sat, 14 Feb 2026 00:00:00 GMT</pubDate><category>safe-computing</category><category>rust</category><category>zig</category><category>go</category><category>systems-programming</category><category>methodology</category></item><item><title>Compiling Trading Signals: sigc and the Quantitative Hypothesis Pipeline</title><link>https://skelfresearch.com/blog/formal-optimisation/compiling-trading-signals/</link><guid isPermaLink="true">https://skelfresearch.com/blog/formal-optimisation/compiling-trading-signals/</guid><description>From visual signal specification to verified Rust executable — how sigc turns alpha hypotheses into production-ready code in minutes.</description><pubDate>Sat, 07 Feb 2026 00:00:00 GMT</pubDate><category>formal-optimisation</category><category>quant</category><category>signals</category><category>compiler</category><category>rust</category><category>verification</category></item><item><title>Open Science in AI: Why We Publish Everything</title><link>https://skelfresearch.com/blog/cross-cutting/open-science-in-ai/</link><guid isPermaLink="true">https://skelfresearch.com/blog/cross-cutting/open-science-in-ai/</guid><description>The case for radical openness in AI research — reproducibility, falsifiability, and community trust through 25 open-source projects.</description><pubDate>Thu, 15 Jan 2026 00:00:00 GMT</pubDate><category>cross-cutting</category><category>open-science</category><category>open-source</category><category>reproducibility</category><category>methodology</category></item></channel></rss>