{
  "schema_version": "0",
  "site": "菊丸ツゥルズ",
  "site_url": "https://kkt.renderise.jp/",
  "generated_from": "json/list.json",
  "source_hash": "dcbd3c9e12acdb56a0792f5eaa09c6a9293b66ce6e917970b9dd566911e30145",
  "note": "json/list.json から決定論生成（生成時刻は含めない / R2）。手動編集せず generate_aio_manifest.py で再生成すること。各ツールはブラウザ内処理・外部送信ゼロです。結果は補助情報であり正しさを保証しません。",
  "tools": [
    {
      "id": "pdf_2_3d",
      "title": "PDF→3D変換",
      "category": "3D・ビジュアル",
      "url": "https://kkt.renderise.jp/pdf_2_3d.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "pdf_2_3d.html?input={input}&format=json"
    },
    {
      "id": "generate_csharp_property",
      "title": "C#プロパティジェネレータ",
      "category": "コード生成",
      "url": "https://kkt.renderise.jp/generate_csharp_property.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "generate_csharp_property.html?input={input}&format=json"
    },
    {
      "id": "case_converter",
      "title": "snake/camel/Pascal 変換",
      "category": "コード生成",
      "url": "https://kkt.renderise.jp/case_converter.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input, action(convert), format_mode(snake|camel|pascal|kebab|constant|all), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "action",
            "type": "enum",
            "values": [
              "convert"
            ],
            "required": false
          },
          {
            "name": "format_mode",
            "type": "enum",
            "values": [
              "snake",
              "camel",
              "pascal",
              "kebab",
              "constant",
              "all"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "string",
          "description": "変換済み識別子"
        }
      },
      "url_template": "case_converter.html?input={input}&action={action}&format_mode={format_mode}&format=json"
    },
    {
      "id": "fullwidth_halfwidth_converter",
      "title": "全角⇄半角変換",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/fullwidth_halfwidth_converter.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(toHalf|toFull|normalize), format(html|json|raw)",
      "url_template": "fullwidth_halfwidth_converter.html?input={input}&format=json"
    },
    {
      "id": "newline_converter",
      "title": "改行コード変換",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/newline_converter.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(toLf|toCrlf|toCr|detect), format(html|json|raw)",
      "url_template": "newline_converter.html?input={input}&format=json"
    },
    {
      "id": "url_encode",
      "title": "URLエンコード/デコード",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/url_encode.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input, action(encode|decode), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "action",
            "type": "enum",
            "values": [
              "encode",
              "decode"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "string",
          "description": "エンコード / デコード結果"
        }
      },
      "url_template": "url_encode.html?input={input}&action={action}&format=json"
    },
    {
      "id": "regex_tester",
      "title": "正規表現テスター",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/regex_tester.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, pattern, flags(g|i|m|s|u), action(test), format(html|json|raw)",
      "url_template": "regex_tester.html?input={input}&format=json"
    },
    {
      "id": "markdown_table_generator",
      "title": "Markdownテーブル生成",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/markdown_table_generator.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, delimiter(auto|comma|tab|pipe), header(true|false), action(convert), format(html|json|raw)",
      "url_template": "markdown_table_generator.html?input={input}&format=json"
    },
    {
      "id": "jwt_decoder",
      "title": "JWT簡易デコード",
      "category": "開発支援",
      "url": "https://kkt.renderise.jp/jwt_decoder.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(non-sensitive sample JWT), action(decode), format(html|json|raw)",
      "url_template": "jwt_decoder.html?input={input}&format=json"
    },
    {
      "id": "sha256_hash",
      "title": "SHA-256ハッシュ生成",
      "category": "開発支援",
      "url": "https://kkt.renderise.jp/sha256_hash.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input(non-sensitive text), action(hash), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true,
          "note": "non-sensitive text only"
        },
        "params": [
          {
            "name": "action",
            "type": "enum",
            "values": [
              "hash"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "string",
          "description": "SHA-256 hex"
        }
      },
      "url_template": "sha256_hash.html?input={input}&action={action}&format=json"
    },
    {
      "id": "uuid_ulid_generator",
      "title": "UUID / ULID ジェネレータ",
      "category": "開発支援",
      "url": "https://kkt.renderise.jp/uuid_ulid_generator.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "action(uuidv4|uuidv7|ulid), count(integer), format(html|json|raw)",
      "url_template": "uuid_ulid_generator.html?input={input}&format=json"
    },
    {
      "id": "code_fence_extractor",
      "title": "コードフェンス抽出",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/code_fence_extractor.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(extract), format(html|json|raw)",
      "url_template": "code_fence_extractor.html?input={input}&format=json"
    },
    {
      "id": "prompt_template_expander",
      "title": "プロンプトテンプレ変数展開",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/prompt_template_expander.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(template), vars(JSON), action(expand), format(html|json|raw)",
      "url_template": "prompt_template_expander.html?input={input}&format=json"
    },
    {
      "id": "ai_text_cleanser",
      "title": "AI向けテキストクレンザー",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/ai_text_cleanser.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(analyze|clean), format(html|json|raw)",
      "url_template": "ai_text_cleanser.html?input={input}&format=json"
    },
    {
      "id": "token_counter",
      "title": "トークンカウンタ",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/token_counter.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input, model(gpt|claude|gemini), rate(optional number), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "model",
            "type": "enum",
            "values": [
              "gpt",
              "claude",
              "gemini"
            ],
            "required": false
          },
          {
            "name": "rate",
            "type": "number",
            "required": false
          },
          {
            "name": "format",
            "type": "enum",
            "values": [
              "html",
              "json",
              "raw"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "json",
          "description": "概算トークン、文字数、バイト数、任意単価での概算コスト"
        }
      },
      "url_template": "token_counter.html?input={input}&model={model}&rate={rate}&format=json"
    },
    {
      "id": "strict_calculator",
      "title": "厳密電卓",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/strict_calculator.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input(expression), action(calc), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "action",
            "type": "enum",
            "values": [
              "calc"
            ],
            "required": false
          },
          {
            "name": "format",
            "type": "enum",
            "values": [
              "html",
              "json",
              "raw"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "json",
          "description": "厳密な有理数計算結果、分数、小数表示"
        }
      },
      "url_template": "strict_calculator.html?input={input}&action={action}&format=json"
    },
    {
      "id": "json_repair",
      "title": "JSON 修復",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/json_repair.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input, action(repair), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "action",
            "type": "enum",
            "values": [
              "repair"
            ],
            "required": false
          },
          {
            "name": "format",
            "type": "enum",
            "values": [
              "html",
              "json",
              "raw"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "json",
          "description": "修復済みJSON、修復ログ、差分サマリ"
        }
      },
      "url_template": "json_repair.html?input={input}&action={action}&format=json"
    },
    {
      "id": "url_query_builder",
      "title": "URL クエリ分解・組み立て",
      "category": "URL・エンコード",
      "url": "https://kkt.renderise.jp/url_query_builder.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(parse|build), format(html|json|raw)",
      "url_template": "url_query_builder.html?input={input}&format=json"
    },
    {
      "id": "base64_encode_decode",
      "title": "Base64 エンコード/デコード",
      "category": "URL・エンコード",
      "url": "https://kkt.renderise.jp/base64_encode_decode.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(encode|decode), url_safe(true|false), format(html|json|raw)",
      "url_template": "base64_encode_decode.html?input={input}&format=json"
    },
    {
      "id": "json_formatter",
      "title": "JSON整形・バリデータ",
      "category": "データ変換",
      "url": "https://kkt.renderise.jp/json_formatter.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(JSON), action(format|minify|validate), format(html|json|raw)",
      "url_template": "json_formatter.html?input={input}&format=json"
    },
    {
      "id": "yaml_json_converter",
      "title": "YAML ⇄ JSON 変換",
      "category": "データ変換",
      "url": "https://kkt.renderise.jp/yaml_json_converter.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input, action(yamlToJson|jsonToYaml), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "action",
            "type": "enum",
            "values": [
              "yamlToJson",
              "jsonToYaml"
            ],
            "required": false
          },
          {
            "name": "format",
            "type": "enum",
            "values": [
              "html",
              "json",
              "raw"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "string",
          "description": "JSONまたはYAMLの変換結果"
        }
      },
      "url_template": "yaml_json_converter.html?input={input}&action={action}&format=json"
    },
    {
      "id": "csv_to_json",
      "title": "CSV/TSV → JSON 変換",
      "category": "データ変換",
      "url": "https://kkt.renderise.jp/csv_to_json.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "csv_to_json.html?input={input}&format=json"
    },
    {
      "id": "json_to_csv",
      "title": "JSON → CSV/TSV 変換",
      "category": "データ変換",
      "url": "https://kkt.renderise.jp/json_to_csv.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "json_to_csv.html?input={input}&format=json"
    },
    {
      "id": "grid2jsonmulti",
      "title": "グリッドデータをJSONに変換（複数レコード用）",
      "category": "データ変換",
      "url": "https://kkt.renderise.jp/grid2jsonmulti.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "grid2jsonmulti.html?input={input}&format=json"
    },
    {
      "id": "grid2jsonsingle",
      "title": "グリッドデータをJSONに変換（単一レコード用）",
      "category": "データ変換",
      "url": "https://kkt.renderise.jp/grid2jsonsingle.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "grid2jsonsingle.html?input={input}&format=json"
    },
    {
      "id": "html_escape",
      "title": "HTML JSONエスケープ & アンエスケープ",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/html_escape.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(escape|unescape), format(html|json|raw)",
      "url_template": "html_escape.html?input={input}&format=json"
    },
    {
      "id": "line_deduper",
      "title": "重複行削除・ソート・件数カウント",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/line_deduper.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(dedupe), sort(keep|asc|desc|numericAsc|numericDesc), format(html|json|raw)",
      "url_template": "line_deduper.html?input={input}&format=json"
    },
    {
      "id": "text_diff",
      "title": "テキスト差分",
      "category": "差分・比較",
      "url": "https://kkt.renderise.jp/text_diff.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(left), input2(right), action(diff), format(html|json|raw)",
      "url_template": "text_diff.html?input={input}&format=json"
    },
    {
      "id": "multi_replacer",
      "title": "マルチ置換",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/multi_replacer.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "multi_replacer.html?input={input}&format=json"
    },
    {
      "id": "numbers",
      "title": "文字列中の連番",
      "category": "テキスト処理",
      "url": "https://kkt.renderise.jp/numbers.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input({num}を含む文字列), start(integer), count(integer), padding(integer), format(html|json|raw)",
      "url_template": "numbers.html?input={input}&format=json"
    },
    {
      "id": "row2col",
      "title": "縦持ち→横持ち",
      "category": "データ変換",
      "url": "https://kkt.renderise.jp/row2col.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(convert), delimiter(string), format(html|json|raw)",
      "url_template": "row2col.html?input={input}&format=json"
    },
    {
      "id": "set_prefix_and_suffix",
      "title": "Prefix, Suffixのセット",
      "category": "コード生成",
      "url": "https://kkt.renderise.jp/set_prefix_and_suffix.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input, action(apply), prefix(string), suffix(string), format(html|json|raw)",
      "url_template": "set_prefix_and_suffix.html?input={input}&format=json"
    },
    {
      "id": "sql_in_clause",
      "title": "SQL IN 句生成",
      "category": "SQL・コード生成",
      "url": "https://kkt.renderise.jp/sql_in_clause.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(値の一覧), column(カラム名), value_mode(text|number|raw), delimiter(auto|comma|tab|newline), format(html|json|raw)",
      "url_template": "sql_in_clause.html?input={input}&format=json"
    },
    {
      "id": "sql_keyword_uppercase",
      "title": "SQL キーワード大文字化",
      "category": "SQL・コード生成",
      "url": "https://kkt.renderise.jp/sql_keyword_uppercase.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(SQL), action(uppercase), format(html|json|raw)",
      "url_template": "sql_keyword_uppercase.html?input={input}&format=json"
    },
    {
      "id": "unix_time_convert",
      "title": "Unix 時間・日付変換",
      "category": "計算・変換",
      "url": "https://kkt.renderise.jp/unix_time_convert.html",
      "aio_ready": false,
      "deterministic": false,
      "query_schema": "planned: input, action(optional), format(html|json|raw)",
      "url_template": "unix_time_convert.html?input={input}&format=json"
    },
    {
      "id": "house_price_convert",
      "title": "家づくり　単価変換",
      "category": "計算・変換",
      "url": "https://kkt.renderise.jp/house_price_convert.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(numeric price), unit(tsubo|sqm|shaku), format(html|json|raw)",
      "url_template": "house_price_convert.html?input={input}&format=json"
    },
    {
      "id": "tsubo_sqm_tatami_convert",
      "title": "坪・㎡・畳変換",
      "category": "住宅・建築",
      "url": "https://kkt.renderise.jp/tsubo_sqm_tatami_convert.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(numeric area), unit(sqm|tsubo|tatami), tatami_size(sqm), format(html|json|raw)",
      "url_template": "tsubo_sqm_tatami_convert.html?input={input}&format=json"
    },
    {
      "id": "building_coverage_ratio",
      "title": "建ぺい率・容積率計算",
      "category": "住宅・建築",
      "url": "https://kkt.renderise.jp/building_coverage_ratio.html",
      "aio_ready": true,
      "deterministic": true,
      "query_schema": "input(site,building,total), site_area, building_area, total_floor_area, coverage_limit, floor_area_limit, action(calculate), format(html|json|raw)",
      "url_template": "building_coverage_ratio.html?input={input}&format=json"
    },
    {
      "id": "color_code_converter",
      "title": "カラーコード変換",
      "category": "画像・色",
      "url": "https://kkt.renderise.jp/color_code_converter.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input, action(convert), from(auto|hex|rgb|hsl|hsv|cmyk), to(all|hex|rgb|hsl|hsv|cmyk), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "action",
            "type": "enum",
            "values": [
              "convert"
            ],
            "required": false
          },
          {
            "name": "from",
            "type": "enum",
            "values": [
              "auto",
              "hex",
              "rgb",
              "hsl",
              "hsv",
              "cmyk"
            ],
            "required": false
          },
          {
            "name": "to",
            "type": "enum",
            "values": [
              "all",
              "hex",
              "rgb",
              "hsl",
              "hsv",
              "cmyk"
            ],
            "required": false
          },
          {
            "name": "format",
            "type": "enum",
            "values": [
              "html",
              "json",
              "raw"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "json",
          "description": "各形式のカラーコード、RGB値、コントラスト比"
        }
      },
      "url_template": "color_code_converter.html?input={input}&action={action}&from={from}&to={to}&format=json"
    },
    {
      "id": "tool_finder",
      "title": "ツールファインダー（やりたいこと→ツール）",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/tool_finder.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "intent, format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "intent",
          "type": "string",
          "required": true
        },
        "params": [
          {
            "name": "format",
            "type": "enum",
            "values": [
              "html",
              "json",
              "raw"
            ],
            "required": false
          }
        ],
        "output": {
          "type": "json",
          "description": "候補ツールと事前充填URLの配列"
        }
      },
      "url_template": "tool_finder.html?intent={intent}&format=json"
    },
    {
      "id": "receipt_verifier",
      "title": "検証可能レシート（決定論の指紋）",
      "category": "AI連携",
      "url": "https://kkt.renderise.jp/receipt_verifier.html",
      "aio_ready": true,
      "deterministic": true,
      "tool_version": "1.0.0",
      "query_schema": "input, tool_id, tool_version, output, expected(optional), format(html|json|raw)",
      "io_schema": {
        "input": {
          "name": "input",
          "type": "string",
          "required": true,
          "note": "non-sensitive text only"
        },
        "params": [
          {
            "name": "tool_id",
            "type": "string",
            "required": true
          },
          {
            "name": "tool_version",
            "type": "string",
            "required": true
          },
          {
            "name": "output",
            "type": "string",
            "required": true
          },
          {
            "name": "expected",
            "type": "string",
            "required": false
          }
        ],
        "output": {
          "type": "string",
          "description": "SHA-256 hex（レシート）"
        }
      },
      "url_template": "receipt_verifier.html?input={input}&tool_id={tool_id}&tool_version={tool_version}&output={output}&expected={expected}&format=json"
    }
  ]
}
