{
  "slug": "pulumi-neo-local-edit-filesystem-tool-657f2e4e4426",
  "title": "pulumi neo local edit filesystem tool",
  "tools": [
    "pulumi"
  ],
  "tags": [
    "agent"
  ],
  "introduced_at": "2026-04-23T02:56:27.000Z",
  "announced_at": "2026-04-23T02:56:27.000Z",
  "effective_at": null,
  "date_basis": "source-publication",
  "status": "unknown",
  "how": {
    "incantation": "For a repository change handled by `pulumi neo`, call `filesystem__edit` with the target path and exact old and new text. Use an empty `old_string` to create a missing file; replacement counts are validated.",
    "examples": [
      "filesystem__edit({\"file_path\":\"<path>\",\"old_string\":\"<exact text to replace>\",\"new_string\":\"<replacement text>\",\"expected_replacements\":1})",
      "filesystem__edit({\"file_path\":\"<new path>\",\"old_string\":\"\",\"new_string\":\"<file contents>\"})"
    ],
    "gotchas": [
      "Version: v3.232.0",
      "file_path (required): Path of the file to edit.",
      "old_string (required): Exact text to replace; empty string enables creation when the target file is missing.",
      "new_string (required): Replacement text, or contents for a newly created file.",
      "expected_replacements: Expected occurrence count; defaults to 1. A mismatch is reported with the actual and expected counts.",
      "Prerequisite: `pulumi neo` is experimental and hidden behind `PULUMI_EXPERIMENTAL`.",
      "The new-file behavior applies when the target is missing and old_string is empty."
    ]
  },
  "why_it_matters": "For a repository change handled by `pulumi neo`, edit a target file through the local filesystem tool.",
  "before": "The CLI-side edit tool was not implemented; calls failed with “not yet implemented.”",
  "sources": [
    "https://github.com/pulumi/pulumi/releases/tag/v3.232.0",
    "https://github.com/pulumi/pulumi/pull/22654"
  ],
  "rank": 0.94031,
  "judge": {
    "publish": true,
    "judge_model": "codex-cli/gpt-6-luna+typesafe/jev-1.13.0",
    "prompt_version": "extract-v7+enrich-v2+judge-v2x3+jev-publish-v1"
  },
  "review_state": "approved",
  "provenance": {
    "run_id": "wave1b-20261016",
    "verdict_id": "wave1b-20261016:wave1b-20261016-3ad5e6857878575b-3:gate",
    "evidence_hash": "a014ba5dd146dfb70d5698c4bf27b214ac77fc9694c7f5de785a6d1665f097bc"
  },
  "review": {
    "draft_hash": "7d9d178bdf22eb3dcc32866d215891e042363fd89bdeda568e4a9b0b3777e1d4",
    "reviewer": "publication-gate",
    "reviewed_at": "2026-10-07T00:00:00.000Z",
    "decision": "wave1b-20261016:gate",
    "reason": "2 of 3 judge runs approved with p_yes >= 0.9 (mean 0.94 >= 0.9; 2 needed) and Jev gave 0.62 (>= 0.6 needed)."
  }
}
