<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>AI Agent Security Guides, Standards, and MCP Security on PipeLab</title><link>https://pipelab.org/learn/</link><description>Practical guides and open standards for AI-agent security, including MCP defense, evidence verification, compliance, and secure agent setup.</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Mon, 12 Oct 2026 14:17:08 +0000</lastBuildDate><atom:link href="https://pipelab.org/learn/index.xml" rel="self" type="application/rss+xml"/><item><title>Pipelock v3.6 Upgrade Guide: Breaking Changes and Checks</title><link>https://pipelab.org/learn/pipelock-v360-upgrade/</link><guid>https://pipelab.org/learn/pipelock-v360-upgrade/</guid><pubDate>Fri, 02 Oct 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Pipelock v3.6 refuses some config that 3.5 accepted, and changes a few outputs that scripts read. Run the new binary against your current config before you replace a running service.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>pipelock check --config /path/to/pipelock.yaml
</span></span></code></pre></div><p>Use the real production config path. Every refusal names the field, and most name the value and the fix.</p>
<h2 id="config-that-now-fails-to-load">Config that now fails to load</h2>
<p>Each of these was accepted by 3.5 and is refused by 3.6, at startup and on hot reload.</p>]]></description></item><item><title>Securing Claude Code Against Secret Exfiltration</title><link>https://pipelab.org/learn/securing-claude-code-against-secret-exfiltration/</link><guid>https://pipelab.org/learn/securing-claude-code-against-secret-exfiltration/</guid><pubDate>Wed, 29 Apr 2026 00:00:00 +0000</pubDate><description>&lt;p>Claude Code holds your secrets on purpose. The session reads and writes your repo using a GitHub token, calls cloud APIs with AWS or GCP credentials, and authenticates to Anthropic with an &lt;code>sk-ant-api03&lt;/code> key in your environment. That access is the point. The risk is that the same session can also fetch URLs, run shell commands, and call MCP tools, which means anything that steers the agent toward a network destination has a path to those secrets. This page covers how the leak actually happens on Claude Code specifically, the patterns that show up in the wild, and the defenses that catch each path before the request leaves your machine.&lt;/p></description></item><item><title>Continue.dev MCP Security: Scanning with Pipelock</title><link>https://pipelab.org/learn/continue/</link><guid>https://pipelab.org/learn/continue/</guid><pubDate>Sat, 16 May 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Continue.dev is an open-source AI coding assistant that runs inside VS Code and JetBrains IDEs. It is MCP-native: tools, context providers, and integrations get loaded from MCP servers declared in the Continue config. Pipelock wraps each of those servers so every tool call and response runs through its MCP proxy.</p>
<h2 id="why-continuedev-needs-an-agent-firewall">Why Continue.dev needs an agent firewall</h2>
<p>Continue sessions frequently involve:</p>
<table data-fx="reveal">
  <thead>
    <tr>
      <th>Workflow</th>
      <th>What Continue accesses</th>
      <th>What could go wrong</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Multi-file edits</td>
      <td>Source code, secrets in history</td>
      <td>Credentials leaked through tool arguments</td>
    </tr>
    <tr>
      <td>Context providers</td>
      <td>Repository search, docs, URLs</td>
      <td>Prompt injection in fetched content</td>
    </tr>
    <tr>
      <td>MCP tool execution</td>
      <td>Filesystem, databases, APIs</td>
      <td>Tool poisoning, rug-pull updates, chain attacks</td>
    </tr>
    <tr>
      <td>Conversation history</td>
      <td>Past plans, tool outputs</td>
      <td>An injected instruction surviving across resume</td>
    </tr>
  </tbody>
</table>
<p>Pipelock sits inline on each MCP server. It scans <code>tools/call</code> arguments outbound for DLP, scans tool responses inbound for prompt injection, scans tool definitions for poisoned descriptions, and emits signed action receipts so an operator can prove what happened.</p>]]></description></item><item><title>Verify a Pipelock Receipt: Copy-Paste Demo</title><link>https://pipelab.org/learn/verify-a-receipt/</link><guid>https://pipelab.org/learn/verify-a-receipt/</guid><pubDate>Thu, 21 May 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Pipelock writes a signed receipt every time it adjudicates an outbound agent
action. Receipts compose into a hash-chained file an auditor or CI runner can
read without trusting any vendor dashboard. This page is the shortest path
from zero to &ldquo;I ran the verifier, it passed, I tampered one byte, it failed.&rdquo;</p>
<p>The fixtures here come from the public conformance corpus that verifier
authors and Audit Packet producers can test against. There is no vendor-only
verification path: every command below runs on public fixtures with a public
test key.</p>]]></description></item><item><title>Agent Action Receipts: Signed Evidence for What an AI Agent Did</title><link>https://pipelab.org/learn/agent-action-receipts/</link><guid>https://pipelab.org/learn/agent-action-receipts/</guid><pubDate>Thu, 21 May 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Most agent security tools tell you what the agent did from inside the
agent. An action receipt tells you what the agent did from outside,
signs the record with a key the agent cannot reach, and lets any third
party verify the record without trusting a vendor dashboard.</p>
<p>That is the difference between a log and evidence.</p>
<h2 id="verifiable-ai-agent-actions">Verifiable AI agent actions</h2>
<p>Verifiable AI agent actions need more than a timestamped log line. They need a record from outside the agent process and a verifier that rejects tampered evidence without calling the original vendor. The <a href="/learn/what-did-my-agent-do/">what did my agent do</a> page walks a full audit trail end to end.</p>]]></description></item><item><title>Hermes Agent Integration: Hook-Based Scanning for Non-MCP Agents</title><link>https://pipelab.org/learn/hermes-integration/</link><guid>https://pipelab.org/learn/hermes-integration/</guid><pubDate>Sun, 31 May 2026 00:00:00 +0000</pubDate><description>&lt;p>MCP gave Pipelock a clean place to stand between an agent and its tools. Frameworks that do not run on MCP never had that seam. Their tool calls and lifecycle events happened entirely inside the framework, where no proxy could see them.&lt;/p>
&lt;p>The Hermes Agent integration adds the seam. A small plugin inside Hermes forwards each hook event to Pipelock, which scans it the same way it scans everything else.&lt;/p></description></item><item><title>Pi Security: Route the Coding Agent Through Pipelock</title><link>https://pipelab.org/learn/pi/</link><guid>https://pipelab.org/learn/pi/</guid><pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Pi is a terminal coding agent. It reads a global <code>httpProxy</code> setting from <code>~/.pi/agent/settings.json</code> and turns it into the <code>HTTP_PROXY</code> and <code>HTTPS_PROXY</code> environment variables. Pipelock uses that setting: <code>pipelock pi install</code> points it at a dedicated listener, so Pi&rsquo;s proxy-aware traffic routes through Pipelock under the <code>pi</code> agent profile. Of Pi&rsquo;s own settings, the installer changes only that one. See Pi&rsquo;s <a href="https://github.com/earendil-works/pi/blob/v0.85.1/packages/coding-agent/docs/settings.md" target="_blank" rel="noopener noreferrer">proxy setting documentation</a> for the upstream side.</p>
<h2 id="what-this-covers">What this covers</h2>
<p>This setup routes requests that honor the proxy setting through Pipelock. For HTTPS, Pipelock sees only the destination of a plain CONNECT tunnel; scanning headers and bodies needs TLS interception and a Pipelock CA that Pi trusts. Tools and subprocesses that ignore proxy environment variables need separate network containment. See the <a href="/learn/pipelock-contain-guide/">containment guide</a> for that.</p>]]></description></item><item><title>Contain an AI Agent on Linux with Pipelock</title><link>https://pipelab.org/learn/pipelock-contain-guide/</link><guid>https://pipelab.org/learn/pipelock-contain-guide/</guid><pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate><description><![CDATA[<p><code>pipelock contain</code> runs an AI agent on your Linux host in a way the agent can&rsquo;t quietly leave. The agent gets its own network with no route off the machine, and the only ways out are the Pipelock proxy and services you name. This guide walks the whole lifecycle in the order you&rsquo;d run it. The full flag reference is in the <a href="https://github.com/luckyPipewrench/pipelock/blob/main/docs/contain-cli.md" target="_blank" rel="noopener noreferrer"><code>contain</code> CLI doc</a>.</p>
<h2 id="what-containment-is">What containment is</h2>
<p>Containment splits one workstation into three accounts:</p>]]></description></item><item><title>Grok Build Security: Forward Proxy and Manual MCP Wrap</title><link>https://pipelab.org/learn/grok/</link><guid>https://pipelab.org/learn/grok/</guid><pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate><description><![CDATA[<p><a href="https://docs.x.ai/build/overview" target="_blank" rel="noopener noreferrer">Grok Build</a> is xAI&rsquo;s coding agent. The <code>grok</code> CLI has an interactive TUI, a headless mode, ACP, and MCP servers configured with <code>grok mcp</code> or <code>~/.grok/config.toml</code>. Model traffic is ordinary HTTPS. Pipelock covers that path as a forward proxy, and it covers MCP tool traffic when you wrap each stdio server with <code>pipelock mcp proxy</code>.</p>
<p>There is no <code>pipelock grok install</code>. Do not treat this page as env-only, and do not treat MCP as unsupported. The full command reference lives in the <a href="https://github.com/luckyPipewrench/pipelock/blob/main/docs/guides/grok.md" target="_blank" rel="noopener noreferrer">Grok CLI integration guide</a> on GitHub.</p>]]></description></item><item><title>Agent Evidence Level (AEL): Grading AI-Agent Audit Evidence</title><link>https://pipelab.org/learn/agent-evidence-levels/</link><guid>https://pipelab.org/learn/agent-evidence-levels/</guid><pubDate>Fri, 03 Jul 2026 00:00:00 +0000</pubDate><description><![CDATA[<ul>
<li><a href="/schemas/ael/v0.1/verification-status.schema.json">Verification status schema</a></li>
<li><a href="/schemas/">Schema mirror catalog</a>: pinned Agent Egress Bench and Pipelock Rules schema bytes with source commits and digests</li>
</ul>
<p>The specification is CC BY 4.0. The checker, schemas, fixtures, scripts, and other code are Apache 2.0.</p>]]></description></item><item><title>EU AI Act Compliance: Article 26 Deployer Obligations and 6-Month Log Retention</title><link>https://pipelab.org/learn/eu-ai-act-compliance/</link><guid>https://pipelab.org/learn/eu-ai-act-compliance/</guid><pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate><description><![CDATA[<h2 id="article-266-deployer-log-retention-answer">Article 26(6) deployer log retention answer</h2>
<p>Deployers of high-risk AI systems must retain the logs the system automatically generates for <strong>at least six months</strong>, to the extent the deployer controls those logs, and longer where Union or national law requires it. Article 12 is the design-time obligation on the provider to make the system technically capable of automatic logging. Article 26(6) is the runtime obligation on the deployer to keep the logs that result.</p>]]></description></item><item><title>AI Agent Compliance: Audit Logs, Policy, and Evidence</title><link>https://pipelab.org/learn/ai-agent-compliance/</link><guid>https://pipelab.org/learn/ai-agent-compliance/</guid><pubDate>Sat, 11 Apr 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>AI agents make HTTP requests, call external tools, read files, and write code. Each of those actions creates compliance exposure. If an agent leaks credentials, calls an unauthorized API, or follows a prompt injection into a policy violation, your organization owns the consequences.</p>
<p>AI agent compliance is the practice of proving that agents operated within defined boundaries. Not describing what they should do. Proving what they did.</p>
<h2 id="what-auditors-actually-ask">What Auditors Actually Ask</h2>
<p>Auditors do not ask &ldquo;what model do you use?&rdquo; They ask:</p>]]></description></item><item><title>AI Agent Regulatory Controls and Evidence Hub</title><link>https://pipelab.org/learn/ai-agent-regulatory-controls/</link><guid>https://pipelab.org/learn/ai-agent-regulatory-controls/</guid><pubDate>Mon, 11 May 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Most AI agent compliance writing collapses into one of two shapes: a vendor that claims to &ldquo;solve&rdquo; a framework, or a legal-summary blog post with no product story. Both are useless to the buyer who actually has to ship.</p>
<p>This page is built for the buyer doing the work. It maps Pipelock evidence to the obligations of each major framework with honest scope: what the framework asks, what Pipelock supplies, and what it does not cover. Use it as a starting point for procurement and audit conversations. Every assertion below has a public source link.</p>]]></description></item><item><title>SOC 2 Trust Services Criteria: Pipelock Mapping</title><link>https://pipelab.org/learn/soc2-trust-services-criteria/</link><guid>https://pipelab.org/learn/soc2-trust-services-criteria/</guid><pubDate>Mon, 24 Aug 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Pipelock maps runtime controls and evidence to five SOC 2 Trust Services Criteria. The mapping does not claim that PipeLab or Pipelock is SOC 2 audited, attested, or certified.</p>
<p>Pipelock supplies product evidence for controls that operate at its boundary. An organization and its auditor decide whether that evidence supports a control test.</p>
<h2 id="criteria-mapping">Criteria mapping</h2>
<table data-fx="reveal">
  <thead>
    <tr>
      <th>ID</th>
      <th>Criterion</th>
      <th>Status</th>
      <th>Pipelock mapping</th>
      <th>Limit</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>SEC</td>
      <td>Security</td>
      <td>Covered</td>
      <td>Proxy enforcement, MCP scanning, DLP, and structured audit logs support security controls.</td>
      <td></td>
    </tr>
    <tr>
      <td>AVA</td>
      <td>Availability</td>
      <td>Partial</td>
      <td>Metrics and health endpoints aid availability monitoring.</td>
      <td>Capacity planning and service-level agreements remain deployment-specific.</td>
    </tr>
    <tr>
      <td>PI</td>
      <td>Processing Integrity</td>
      <td>Covered</td>
      <td>Recorded evidence and verification flows preserve processing integrity.</td>
      <td></td>
    </tr>
    <tr>
      <td>CONF</td>
      <td>Confidentiality</td>
      <td>Covered</td>
      <td>DLP and redaction controls protect confidential information in transit and at rest.</td>
      <td></td>
    </tr>
    <tr>
      <td>PRIV</td>
      <td>Privacy</td>
      <td>Partial</td>
      <td>Policy testing helps identify privacy gaps.</td>
      <td>Data-subject workflows and retention policy remain outside the proxy.</td>
    </tr>
  </tbody>
</table>
<h2 id="what-the-mapping-means">What the mapping means</h2>
<p>A covered row identifies the Pipelock controls and evidence that map to that criterion. A partial row identifies the same contribution and its stated limit. The mapping is not an audit result, an attestation, or a certification claim.</p>]]></description></item><item><title>NIST AI RMF Coverage: Pipelock Control Mapping</title><link>https://pipelab.org/learn/nist-ai-rmf/</link><guid>https://pipelab.org/learn/nist-ai-rmf/</guid><pubDate>Mon, 24 Aug 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Pipelock&rsquo;s NIST AI RMF mapping focuses on what a runtime proxy can mediate and the evidence it can produce. It does not turn a binary into a risk-management program.</p>
<p>The mapping includes the four core functions and four Generative AI rows. Covered rows name the product controls. Partial rows state the operator-owned work that remains.</p>
<h2 id="core-function-mapping">Core function mapping</h2>
<table data-fx="reveal">
  <thead>
    <tr>
      <th>Function</th>
      <th>Status</th>
      <th>Pipelock mapping</th>
      <th>Limit</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>GOVERN</td>
      <td>Partial</td>
      <td>Audit emission, the flight recorder, and signed attestation bundles supply artifacts for governance records.</td>
      <td>Governance roles, RACI, and policy approval workflows remain with the operator.</td>
    </tr>
    <tr>
      <td>MAP</td>
      <td>Partial</td>
      <td>Discover enumerates MCP servers and their protection state. Audit and assess produce a per-deployment posture map of what is reachable, contained, and unprotected.</td>
      <td>Stakeholder identification and impact classification remain process steps.</td>
    </tr>
    <tr>
      <td>MEASURE</td>
      <td>Covered</td>
      <td>Simulation scenarios produce repeatable detection-coverage measurements. Assess scores per-deployment posture across four weighted sections. Prometheus metrics and the flight recorder provide ongoing operational measurement.</td>
      <td></td>
    </tr>
    <tr>
      <td>MANAGE</td>
      <td>Covered</td>
      <td>Forward proxy and MCP tool policy enforce per-agent action limits. The kill switch and adaptive enforcement contain in-progress incidents. Live-lock contracts gate drift from a promoted baseline.</td>
      <td></td>
    </tr>
  </tbody>
</table>
<h2 id="generative-ai-mapping">Generative AI mapping</h2>
<table data-fx="reveal">
  <thead>
    <tr>
      <th>Area</th>
      <th>Status</th>
      <th>Pipelock mapping</th>
      <th>Limit</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Data privacy</td>
      <td>Covered</td>
      <td>Class-preserving redaction protects PII and PHI in provider payloads. DLP, request-body scanning, and address and seed-phrase detectors prevent inadvertent disclosure to upstream models.</td>
      <td></td>
    </tr>
    <tr>
      <td>Information integrity</td>
      <td>Covered</td>
      <td>Response scanning catches prompt injection in tool results. MCP tool scanning and session binding detect poisoned descriptions and rug-pull drift. Browser Shield strips DOM traps from fetched pages.</td>
      <td></td>
    </tr>
    <tr>
      <td>Provenance</td>
      <td>Partial</td>
      <td>The mediation envelope signs outbound mediated requests. The flight recorder produces tamper-evident decision evidence. The MCP binary-integrity manifest binds tool execution to a known binary.</td>
      <td>Pipelock attests its own mediation, not an upstream model&rsquo;s training-data lineage.</td>
    </tr>
    <tr>
      <td>Harmful bias</td>
      <td>Not covered</td>
      <td></td>
      <td>Bias evaluation belongs to model selection and red-team programs upstream of network mediation.</td>
    </tr>
  </tbody>
</table>
<h2 id="what-the-mapping-does-not-claim">What the mapping does not claim</h2>
<p>Pipelock supports deployment evidence and runtime mediation. The operator owns governance roles, policy approval, stakeholder work, impact classification, and bias evaluation. The provenance mapping covers Pipelock&rsquo;s mediation and known tool binary. It does not establish model provenance.</p>]]></description></item><item><title>MITRE ATLAS Coverage: Pipelock Technique Mapping</title><link>https://pipelab.org/learn/mitre-atlas/</link><guid>https://pipelab.org/learn/mitre-atlas/</guid><pubDate>Mon, 24 Aug 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Pipelock maps fourteen MITRE ATLAS techniques. The mapping is specific to runtime controls and the evidence the product produces. It is not a claim of ATLAS-wide coverage.</p>
<p>Each row below comes from Pipelock&rsquo;s built-in compliance mapping. &ldquo;Covered&rdquo; names a direct product mapping. &ldquo;Partial&rdquo; names a product contribution and the remaining gap.</p>
<h2 id="technique-mapping">Technique mapping</h2>
<table data-fx="reveal">
  <thead>
    <tr>
      <th>ID</th>
      <th>Technique</th>
      <th>Status</th>
      <th>Pipelock mapping</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>ATLAS01</td>
      <td>Gather RAG-Indexed Targets</td>
      <td>Covered</td>
      <td>Discovery and normalized-text scanning expose RAG target harvesting.</td>
    </tr>
    <tr>
      <td>ATLAS02</td>
      <td>Discover LLM System Information</td>
      <td>Covered</td>
      <td>Replayed assessments and simulation traces expose leaked system details.</td>
    </tr>
    <tr>
      <td>ATLAS03</td>
      <td>Special Character Sets</td>
      <td>Covered</td>
      <td>Canonicalized scans catch delimiter and control-character probing.</td>
    </tr>
    <tr>
      <td>ATLAS04</td>
      <td>System Instruction Keywords</td>
      <td>Covered</td>
      <td>Prompt scanning and tool policy inspection surface instruction-keyword discovery.</td>
    </tr>
    <tr>
      <td>ATLAS05</td>
      <td>LLM Prompt Crafting</td>
      <td>Covered</td>
      <td>Red-team chains exercise prompt-crafting bypasses.</td>
    </tr>
    <tr>
      <td>ATLAS06</td>
      <td>Retrieval Content Crafting</td>
      <td>Covered</td>
      <td>Content scanning catches crafted retrieval payloads.</td>
    </tr>
    <tr>
      <td>ATLAS07</td>
      <td>RAG Poisoning</td>
      <td>Partial</td>
      <td>Response scanning, simulation, and attestation help detect the condition. External corpus ownership remains outside Pipelock&rsquo;s control plane.</td>
    </tr>
    <tr>
      <td>ATLAS08</td>
      <td>LLM Prompt Obfuscation</td>
      <td>Covered</td>
      <td>Normalized scanning detects hidden or obfuscated instruction payloads.</td>
    </tr>
    <tr>
      <td>ATLAS09</td>
      <td>LLM Trusted Output Components Manipulation</td>
      <td>Partial</td>
      <td>Attestation and assessment reduce trust abuse. Final user trust decisions remain outside the binary.</td>
    </tr>
    <tr>
      <td>ATLAS10</td>
      <td>Citation Manipulation</td>
      <td>Partial</td>
      <td>Attested evidence and assessment can surface manipulated citations. Citation correctness depends on upstream retrieval sources.</td>
    </tr>
    <tr>
      <td>ATLAS11</td>
      <td>False RAG Entry Injection</td>
      <td>Partial</td>
      <td>Response scanning, discovery, and simulation surface injected entries. The proxy does not own corpus write paths.</td>
    </tr>
    <tr>
      <td>ATLAS12</td>
      <td>Data-Structure Injection</td>
      <td>Covered</td>
      <td>Structured input validation and policy enforcement catch schema exploitation.</td>
    </tr>
    <tr>
      <td>ATLAS13</td>
      <td>Structured Self-Modeling</td>
      <td>Covered</td>
      <td>Dry-run and simulation make structured prompt manipulation easier to validate.</td>
    </tr>
    <tr>
      <td>ATLAS14</td>
      <td>Agent Backdoor Persistence</td>
      <td>Partial</td>
      <td>The flight recorder, attestation, and human review help surface persistence. Persistent agent state and scheduler control remain external.</td>
    </tr>
  </tbody>
</table>
<h2 id="what-the-partial-mappings-leave-outside-pipelock">What the partial mappings leave outside Pipelock</h2>
<p>Pipelock can inspect, simulate, record, and attest to activity at its control points. It does not curate an external corpus, decide whether a reader should trust an output, validate the correctness of citations from an upstream retrieval source, or govern the write path for a corpus. It also does not fully govern long-lived agent state or scheduler control.</p>]]></description></item><item><title>HIPAA Security Rule Coverage: Pipelock Mapping</title><link>https://pipelab.org/learn/hipaa-security-rule/</link><guid>https://pipelab.org/learn/hipaa-security-rule/</guid><pubDate>Mon, 24 Aug 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>Pipelock maps selected HIPAA Security Rule controls that a network proxy can enforce or support with evidence. The scope is the technical safeguards in 45 CFR Part 164, Subpart C that the proxy mediates, plus selected administrative safeguards it touches through evidence emission.</p>
<p>Physical safeguards are outside this mapping. Physical security for the host running Pipelock remains the operator&rsquo;s responsibility. The same applies to business agreements, workforce procedures, and other organizational controls.</p>]]></description></item><item><title>The Pipelock Kill Switch: Six Sources, One Deny-All</title><link>https://pipelab.org/learn/kill-switch/</link><guid>https://pipelab.org/learn/kill-switch/</guid><pubDate>Sun, 23 Aug 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>The kill switch is Pipelock&rsquo;s emergency stop. When it is active, every mediated request is denied until an operator deactivates it. HTTP-facing paths return 503; other transports use their native denial response. It exists for the moment something feels wrong: an agent behaving strangely, a credential you are not sure about, a tool call you want stopped right now while you look.</p>
<h2 id="six-activation-sources-or-composed">Six activation sources, OR-composed</h2>
<p>The kill switch controller composes six independent activation sources. Any single active source denies traffic; all six must be clear for traffic to flow. OR-composed means the sources add up in one direction only: another source can always stop traffic, but no source can override a stop.</p>]]></description></item><item><title>JetBrains MCP Security: Scanning with Pipelock</title><link>https://pipelab.org/learn/jetbrains-integration/</link><guid>https://pipelab.org/learn/jetbrains-integration/</guid><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><description><![CDATA[<p>JetBrains MCP security starts with scanning what flows between your IDE and MCP servers. Pipelock wraps Junie MCP server configurations through its MCP proxy, scanning all tool calls and responses bidirectionally. Works with IntelliJ IDEA, PyCharm, WebStorm, GoLand, and any JetBrains IDE that uses Junie.</p>
<h2 id="whats-new-in-recent-releases">What&rsquo;s new in recent releases</h2>
<p>JetBrains integration is pure MCP proxy wrapping, which unlocks the current signed-evidence surface when receipt signing is configured:</p>
<ul>
<li><strong>Mediator-signed action receipts for MCP decisions (v2.2.0).</strong> With <code>flight_recorder.signing_key_path</code> set in the pipelock config, each proxied Junie MCP decision emits a chained Ed25519 receipt on the <code>mcp_stdio</code> transport.</li>
<li><strong>Cross-implementation verifier (v2.2.0).</strong> Receipts verify byte-for-byte against a published <a href="https://github.com/luckyPipewrench/pipelock-verify-python" target="_blank" rel="noopener noreferrer">Python verifier</a> using a conformance suite. The receipt format is open, not a vendor artifact.</li>
<li><strong>RFC 9421 mediation envelope signing (v2.2.0).</strong> If a Junie config routes to a remote MCP server over HTTP/SSE, every request carries an Ed25519 <code>Pipelock-Mediation</code> signature with a canonical policy hash.</li>
<li><strong>Posture verify CI gate (v2.2.0).</strong> <code>pipelock posture verify</code> gates deploys with distinct exit codes: <code>0</code> pass, <code>1</code> could not complete, <code>2</code> verified but failed.</li>
<li><strong>Class-preserving redaction on <code>tools/call</code> arguments (v2.3.0).</strong> With the <code>redaction</code> section enabled in the pipelock config, matched secrets in <code>params.arguments</code> are rewritten in place with typed placeholders like <code>&lt;pl:aws-access-key:1&gt;</code> before forwarding to the MCP server. Runs on Pipelock&rsquo;s MCP proxy transports. Irreversible. Fail-closed on parse errors. Tool responses are not redacted in v1.</li>
</ul>
<p>See the <a href="/learn/action-receipt-spec/">action receipt spec</a> for the receipt format and the <a href="/learn/ai-agent-data-redaction/">AI agent data redaction guide</a> for redaction rollout.</p>]]></description></item><item><title>MCP Tool Poisoning: Detection and Runtime Defense</title><link>https://pipelab.org/learn/mcp-tool-poisoning/</link><guid>https://pipelab.org/learn/mcp-tool-poisoning/</guid><pubDate>Tue, 07 Apr 2026 00:00:00 +0000</pubDate><description><![CDATA[<h2 id="mcp-tool-poisoning-in-one-paragraph">MCP tool poisoning in one paragraph</h2>
<p>MCP tool poisoning is an attack where a malicious Model Context Protocol server hides instructions inside tool metadata that an AI agent reads during discovery. The hidden instructions enter the model&rsquo;s context window as trusted documentation and the agent acts on them. Every text field in a tool schema is a potential injection surface, not just the top-level description. Rug-pulls are a sub-variant where the server returns clean descriptions to install-time scanners and poisoned descriptions after the agent is using the server. Effective defense combines pre-deploy scanning, runtime proxy inspection, session fingerprinting, and tool inventory binding.</p>]]></description></item></channel></rss>