Sommaire du manuel
project_tool_install
Fonction (description native exacte)
Build-only candidate-scoped project tool lifecycle; bounded isolated execution, no host/network access or engineering approval.
Avant invocation
Vérifiez définition, version et liaison du projet. Les champs requis, limites et consentements du schéma font autorité; ne devinez aucune valeur manquante.
Schéma exact
{
"additionalProperties": false,
"properties": {
"payload": {
"additionalProperties": false,
"properties": {
"adapter": {
"additionalProperties": false,
"properties": {
"call_style": {
"enum": [
"keyword-arguments",
"single-object"
]
},
"function": {
"pattern": "^[A-Za-z][A-Za-z0-9_]{0,63}$",
"type": "string"
},
"manifest": {
"additionalProperties": false,
"properties": {
"description": {
"maxLength": 512,
"minLength": 1,
"type": "string"
},
"entrypoint": {
"const": "tool.py"
},
"input_schema": {
"type": "object"
},
"name": {
"maxLength": 64,
"minLength": 1,
"type": "string"
},
"output_schema": {
"type": "object"
},
"permissions": {
"items": {
"enum": [
"project.read_receipts",
"project.write_staged_report"
]
},
"type": "array",
"uniqueItems": true
},
"schema": {
"const": "powersystem-project-tool/v1"
},
"version": {
"pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
"type": "string"
}
},
"required": [
"schema",
"name",
"description",
"version",
"entrypoint",
"permissions",
"input_schema",
"output_schema"
],
"type": "object"
},
"result_key": {
"pattern": "^[A-Za-z][A-Za-z0-9_]{0,63}$",
"type": "string"
},
"schema": {
"const": "powersystem-project-tool-adapter/v1"
},
"source_path": {
"maxLength": 512,
"minLength": 1,
"type": "string"
}
},
"required": [
"schema",
"manifest",
"source_path",
"function",
"call_style",
"result_key"
],
"type": "object"
},
"archive_sha256": {
"pattern": "^[0-9a-f]{64}$",
"type": "string"
},
"commit_sha": {
"pattern": "^[0-9a-f]{40}$",
"type": "string"
},
"license_path": {
"maxLength": 512,
"minLength": 1,
"type": "string"
},
"license_spdx": {
"type": "string"
},
"repository_url": {
"maxLength": 512,
"type": "string"
},
"tool_id": {
"pattern": "^[0-9a-f]{32}$",
"type": "string"
}
},
"required": [
"repository_url",
"commit_sha",
"license_spdx",
"license_path",
"adapter"
],
"type": "object"
},
"request_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"request_id",
"payload"
],
"type": "object"
}
Résultats et sécurité
Inspectez résultat structuré, identifiants et artefacts conservés. Échecs, non-support et annulation restent explicites. Aucune approbation humaine ni relance automatique. Voir Études, Historique et Extensions.