Initial curated ITWorx_MCP_Hub source from 368fba691ea8d23403b4d56b53b5ec670d7c5020

This commit is contained in:
Public Source Publisher committed 2026-10-01 01:36:21 +02:00
commit cb5be898ea
663 files changed
+82674

No files matched your search

@@ -0,0 +1,111 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Deployment Project Status",
"slug": "deployment-project-status"
},
"spec": {
"canonicalName": "deployment.project.status",
"version": "1.0.0",
"connectorType": "deployment",
"description": "Return read-only deployment revision and service health for the current project.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"deploymentRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"revision": {
"type": [
"string",
"null"
],
"maxLength": 200
},
"sourceCommit": {
"type": [
"string",
"null"
],
"maxLength": 100
},
"status": {
"enum": [
"healthy",
"degraded",
"unavailable",
"unknown"
]
},
"services": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"containerRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"state": {
"type": "string",
"maxLength": 100
},
"health": {
"type": [
"string",
"null"
],
"maxLength": 100
}
},
"required": [
"name",
"containerRef",
"state",
"health"
]
}
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"deploymentRef",
"revision",
"sourceCommit",
"status",
"services",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
+101
View File
@@ -0,0 +1,101 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Deployment Stack Inspect",
"slug": "deployment-stack-inspect"
},
"spec": {
"canonicalName": "deployment.stack.inspect",
"version": "1.0.0",
"connectorType": "deployment",
"description": "Inspect a registered Compose deployment without exposing raw compose paths or write actions.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"deploymentRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
}
},
"required": [
"deploymentRef"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"deploymentRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"composeProject": {
"type": "string",
"maxLength": 200
},
"revision": {
"type": [
"string",
"null"
],
"maxLength": 200
},
"services": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"image": {
"type": "string",
"maxLength": 500
},
"containerRef": {
"type": [
"string",
"null"
],
"maxLength": 128
}
},
"required": [
"name",
"image",
"containerRef"
]
}
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"deploymentRef",
"composeProject",
"revision",
"services",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
+28
View File
@@ -0,0 +1,28 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Branch Create", "slug": "gitea-branch-create"},
"spec": {
"canonicalName": "gitea.branch.create",
"version": "1.9.0",
"connectorType": "gitea",
"description": "Create any valid non-default branch from an existing safe ref. Never creates or modifies the default branch.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"branch": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$", "maxLength": 300},
"fromRef": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$", "maxLength": 300}
},
"required": ["repositoryRef", "branch", "fromRef"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:write"]
}
}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Branch Delete","slug":"gitea-branch-delete"},"spec":{"canonicalName":"gitea.branch.delete","version":"1.14.0","connectorType":"gitea","description":"Delete only a non-default branch whose matching PR is merged or closed, with an exact head SHA lock and no open PR reference.","riskClass":"R3","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"},"expectedHeadSha":{"type":"string","pattern":"^[0-9a-fA-F]{40,64}$"}},"required":["repositoryRef","branch","expectedHeadSha"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":15000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
+105
View File
@@ -0,0 +1,105 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Branch List",
"slug": "gitea-branch-list"
},
"spec": {
"canonicalName": "gitea.branch.list",
"version": "1.0.0",
"connectorType": "gitea",
"description": "List bounded branch metadata for a registered repository.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": [
"repositoryRef"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"maxLength": 300
},
"commitSha": {
"type": "string",
"pattern": "^[a-f0-9]{7,64}$"
},
"protected": {
"type": "boolean"
}
},
"required": [
"name",
"commitSha",
"protected"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Branch Protection Ensure","slug":"gitea-branch-protection-ensure"},"spec":{"canonicalName":"gitea.branchprotection.ensure","version":"1.8.0","connectorType":"gitea","description":"Apply one unchanged governance preview and verify managed validation plus default-branch protection.","riskClass":"R2","readOnly":false,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"expectedPlanHash":{"type":"string","pattern":"^[0-9a-f]{64}$"}},"required":["repositoryRef","expectedPlanHash"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Branch Protection Get","slug":"gitea-branch-protection-get"},"spec":{"canonicalName":"gitea.branchprotection.get","version":"1.8.0","connectorType":"gitea","description":"Read the effective protection rule for a registered repository default branch.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"}},"required":["repositoryRef"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":20000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Branch Protection Preview","slug":"gitea-branch-protection-preview"},"spec":{"canonicalName":"gitea.branchprotection.preview","version":"1.8.0","connectorType":"gitea","description":"Preview the exact managed-validation and default-branch protection diff and return a plan hash.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"}},"required":["repositoryRef"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":20000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Capabilities Get","slug":"gitea-capabilities-get"},"spec":{"canonicalName":"gitea.capabilities.get","version":"1.8.0","connectorType":"gitea","description":"Return the current governed tool inventory and stable capability fingerprint for refresh checks.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":10000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Change Reconcile","slug":"gitea-change-reconcile"},"spec":{"canonicalName":"gitea.change.reconcile","version":"1.12.0","connectorType":"gitea","description":"Compute the next durable delivery action from a consistent branch, pull-request and validation snapshot without mutation.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"}},"required":["repositoryRef","branch"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Change Review","slug":"gitea-change-review"},"spec":{"canonicalName":"gitea.change.review","version":"1.9.0","connectorType":"gitea","description":"Render branch, PR, comparison and validation state in the MCP Apps review surface.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"}},"required":["repositoryRef","branch"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":524288,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Change Status","slug":"gitea-change-status"},"spec":{"canonicalName":"gitea.change.status","version":"1.10.0","connectorType":"gitea","description":"Use this to resume one branch from durable PR and validation state. Respect pollAfterMs and repeat only while terminal=false.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"}},"required":["repositoryRef","branch"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":15000,"maxOutputBytes":131072,"maxItems":25},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+13
View File
@@ -0,0 +1,13 @@
{
"apiVersion": "hub.example.com/v1alpha1", "kind": "ToolManifest",
"metadata": {"name": "Gitea Changeset Apply", "slug": "gitea-changeset-apply"},
"spec": {
"canonicalName": "gitea.changeset.apply", "version": "1.9.0", "connectorType": "gitea",
"description": "Atomically create, update, patch, move or delete up to 50 SHA-locked files in one commit on any valid non-default branch.",
"riskClass": "R2", "readOnly": false, "idempotent": false,
"inputSchema": {"type": "object", "additionalProperties": false, "properties": {"repositoryRef": {"type": "string"}, "branch": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"}, "message": {"type": "string", "minLength": 1, "maxLength": 1000}, "operations": {"type": "array", "minItems": 1, "maxItems": 50, "items": {"type": "object"}}}, "required": ["repositoryRef", "branch", "message", "operations"]},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 60000, "maxOutputBytes": 262144, "maxItems": 50},
"redactionProfile": "documents", "requiredScopes": ["project:{project}:write"]
}
}
@@ -0,0 +1,13 @@
{
"apiVersion": "hub.example.com/v1alpha1", "kind": "ToolManifest",
"metadata": {"name": "Gitea Changeset Preview", "slug": "gitea-changeset-preview"},
"spec": {
"canonicalName": "gitea.changeset.preview", "version": "1.9.0", "connectorType": "gitea",
"description": "Validate SHA locks and return the exact bounded multi-file diff before a changeset is applied.",
"riskClass": "R1", "readOnly": true, "idempotent": true,
"inputSchema": {"type": "object", "additionalProperties": false, "properties": {"repositoryRef": {"type": "string"}, "branch": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"}, "operations": {"type": "array", "minItems": 1, "maxItems": 50, "items": {"type": "object"}}}, "required": ["repositoryRef", "branch", "operations"]},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 30000, "maxOutputBytes": 262144, "maxItems": 50},
"redactionProfile": "documents", "requiredScopes": ["project:{project}:read"]
}
}
+125
View File
@@ -0,0 +1,125 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Code Search",
"slug": "gitea-code-search"
},
"spec": {
"canonicalName": "gitea.code.search",
"version": "1.3.0",
"connectorType": "gitea",
"description": "Search actual UTF-8 code in one registered repository and return bounded line matches with file URIs.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"ref": {"type": ["string", "null"], "maxLength": 300},
"pathPrefix": {"type": "string", "maxLength": 2048, "default": ""},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": [
"repositoryRef",
"query"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"fileUri": {
"type": "string",
"pattern": "^itworx-git://",
"maxLength": 2048
},
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"path": {
"type": "string",
"maxLength": 1000
},
"ref": {
"type": "string",
"maxLength": 300
},
"snippet": {
"type": "string",
"maxLength": 2000
}
},
"required": [
"fileUri",
"repositoryRef",
"path",
"ref",
"snippet"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 15000,
"maxOutputBytes": 196608,
"maxItems": 50
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Commit Get","slug":"gitea-commit-get"},"spec":{"canonicalName":"gitea.commit.get","version":"1.4.0","connectorType":"gitea","description":"Inspect one commit with verification, statistics and a bounded affected-file list.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"ref":{"type":"string","minLength":1,"maxLength":300}},"required":["repositoryRef","ref"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":15000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+121
View File
@@ -0,0 +1,121 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Commit List",
"slug": "gitea-commit-list"
},
"spec": {
"canonicalName": "gitea.commit.list",
"version": "1.0.0",
"connectorType": "gitea",
"description": "List bounded commit metadata for a registered repository and optional registered branch.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"branch": {
"type": [
"string",
"null"
],
"maxLength": 300
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": [
"repositoryRef"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"sha": {
"type": "string",
"pattern": "^[a-f0-9]{7,64}$"
},
"summary": {
"type": "string",
"maxLength": 1000
},
"authorName": {
"type": [
"string",
"null"
],
"maxLength": 300
},
"committedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"sha",
"summary",
"authorName",
"committedAt"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,29 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Commit Status List", "slug": "gitea-commit-status-list"},
"spec": {
"canonicalName": "gitea.commitstatus.list",
"version": "1.0.0",
"connectorType": "gitea",
"description": "List bounded CI and commit status metadata for an exact repository ref.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"ref": {"type": "string", "minLength": 1, "maxLength": 300},
"limit": {"type": "integer", "minimum": 1, "maximum": 100, "default": 25},
"cursor": {"type": ["string", "null"], "maxLength": 500, "default": null}
},
"required": ["repositoryRef", "ref"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 10000, "maxOutputBytes": 262144, "maxItems": 100},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:read"]
}
}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Connection Check","slug":"gitea-connection-check"},"spec":{"canonicalName":"gitea.connection.check","version":"1.8.0","connectorType":"gitea","description":"Verify scoped upstream access, repository discovery and the current capability fingerprint without exposing credentials.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":20000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+30
View File
@@ -0,0 +1,30 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea File Create", "slug": "gitea-file-create"},
"spec": {
"canonicalName": "gitea.file.create",
"version": "1.9.0",
"connectorType": "gitea",
"description": "Create one bounded UTF-8 text file on any valid non-default branch; direct default-branch writes are rejected.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"path": {"type": "string", "minLength": 1, "maxLength": 2048},
"branch": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$", "maxLength": 300},
"content": {"type": "string", "maxLength": 200000},
"message": {"type": "string", "minLength": 1, "maxLength": 1000}
},
"required": ["repositoryRef", "path", "branch", "content", "message"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:write"]
}
}
+30
View File
@@ -0,0 +1,30 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea File Delete", "slug": "gitea-file-delete"},
"spec": {
"canonicalName": "gitea.file.delete",
"version": "1.9.0",
"connectorType": "gitea",
"description": "Delete one file from any valid non-default branch using the caller-supplied current SHA as an optimistic lock.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"path": {"type": "string", "minLength": 1, "maxLength": 2048},
"branch": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$", "maxLength": 300},
"message": {"type": "string", "minLength": 1, "maxLength": 1000},
"expectedSha": {"type": "string", "pattern": "^[0-9a-fA-F]{40,64}$"}
},
"required": ["repositoryRef", "path", "branch", "message", "expectedSha"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:write"]
}
}
+82
View File
@@ -0,0 +1,82 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea File Read",
"slug": "gitea-file-read"
},
"spec": {
"canonicalName": "gitea.file.read",
"version": "1.2.0",
"connectorType": "gitea",
"description": "Read one bounded file using a URI returned by an authorized repository tool, optionally from an explicit branch or ref.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"fileUri": {
"type": "string",
"pattern": "^itworx-git://",
"maxLength": 2048
},
"ref": {
"type": ["string", "null"],
"maxLength": 300
}
},
"required": [
"fileUri"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"fileUri": {
"type": "string",
"minLength": 1,
"maxLength": 2048
},
"mimeType": {
"type": "string",
"maxLength": 100
},
"content": {
"type": "string",
"maxLength": 200000
},
"commitSha": {
"type": "string",
"pattern": "^[a-f0-9]{7,64}$"
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"fileUri",
"mimeType",
"content",
"commitSha",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 1
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
+31
View File
@@ -0,0 +1,31 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea File Update", "slug": "gitea-file-update"},
"spec": {
"canonicalName": "gitea.file.update",
"version": "1.9.0",
"connectorType": "gitea",
"description": "Update one bounded UTF-8 text file on a change branch using the caller-supplied current SHA as an optimistic lock.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"path": {"type": "string", "minLength": 1, "maxLength": 2048},
"branch": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$", "maxLength": 300},
"content": {"type": "string", "maxLength": 200000},
"message": {"type": "string", "minLength": 1, "maxLength": 1000},
"expectedSha": {"type": "string", "pattern": "^[0-9a-fA-F]{40,64}$"}
},
"required": ["repositoryRef", "path", "branch", "content", "message", "expectedSha"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:write"]
}
}
@@ -0,0 +1,28 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Issue Comment Create", "slug": "gitea-issue-comment-create"},
"spec": {
"canonicalName": "gitea.issue.comment.create",
"version": "1.1.0",
"connectorType": "gitea",
"description": "Add one bounded comment to an existing Gitea issue or pull request when the user requested that external communication.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"number": {"type": "integer", "minimum": 1, "maximum": 2147483647},
"body": {"type": "string", "minLength": 1, "maxLength": 32000}
},
"required": ["repositoryRef", "number", "body"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:write"]
}
}
+28
View File
@@ -0,0 +1,28 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Issue Create", "slug": "gitea-issue-create"},
"spec": {
"canonicalName": "gitea.issue.create",
"version": "1.1.0",
"connectorType": "gitea",
"description": "Create one issue in an explicitly registered repository when the user requested that external write.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"title": {"type": "string", "minLength": 1, "maxLength": 500},
"body": {"type": "string", "maxLength": 32000, "default": ""}
},
"required": ["repositoryRef", "title"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:write"]
}
}
+130
View File
@@ -0,0 +1,130 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Issue List",
"slug": "gitea-issue-list"
},
"spec": {
"canonicalName": "gitea.issue.list",
"version": "1.0.0",
"connectorType": "gitea",
"description": "List issue metadata without creating or modifying issues.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"state": {
"enum": [
"open",
"closed",
"all"
],
"default": "open"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": [
"repositoryRef"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"number": {
"type": "integer",
"minimum": 1
},
"title": {
"type": "string",
"maxLength": 500
},
"state": {
"enum": [
"open",
"closed"
]
},
"updatedAt": {
"type": "string",
"format": "date-time"
},
"labels": {
"type": "array",
"maxItems": 50,
"items": {
"type": "string",
"maxLength": 100
}
}
},
"required": [
"number",
"title",
"state",
"updatedAt",
"labels"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
+98
View File
@@ -0,0 +1,98 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Portfolio Issue Search",
"slug": "gitea-issue-search"
},
"spec": {
"canonicalName": "gitea.issue.search",
"version": "1.0.0",
"connectorType": "gitea",
"description": "Search issue metadata across the scoped repository portfolio in one call.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"state": {
"enum": ["open", "closed", "all"],
"default": "open"
},
"excludeRepositoryNames": {
"type": "array",
"maxItems": 20,
"uniqueItems": true,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"default": []
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 100
},
"cursor": {
"type": ["string", "null"],
"maxLength": 500,
"default": null
}
}
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "maxLength": 128},
"repositoryFullName": {"type": "string", "maxLength": 242},
"number": {"type": "integer", "minimum": 0},
"title": {"type": "string", "maxLength": 500},
"state": {"type": "string", "maxLength": 32},
"updatedAt": {"type": "string", "maxLength": 64},
"labels": {
"type": "array",
"maxItems": 20,
"items": {"type": "string", "maxLength": 100}
},
"sourceUri": {"type": "string", "maxLength": 2048}
},
"required": [
"repositoryRef",
"repositoryFullName",
"number",
"title",
"state",
"updatedAt",
"labels",
"sourceUri"
]
}
},
"nextCursor": {"type": ["string", "null"], "maxLength": 500},
"truncated": {"type": "boolean"},
"generatedAt": {"type": "string", "format": "date-time"}
},
"required": ["items", "nextCursor", "truncated", "generatedAt"]
},
"limits": {
"timeoutMs": 5000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:read"]
}
}
+30
View File
@@ -0,0 +1,30 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Issue Update", "slug": "gitea-issue-update"},
"spec": {
"canonicalName": "gitea.issue.update",
"version": "1.10.0",
"connectorType": "gitea",
"description": "Update, close or reopen one issue while explicitly excluding pull requests.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"number": {"type": "integer", "minimum": 1, "maximum": 2147483647},
"title": {"type": ["string", "null"], "minLength": 1, "maxLength": 500},
"body": {"type": ["string", "null"], "maxLength": 32000},
"state": {"type": ["string", "null"], "enum": ["open", "closed", null]}
},
"required": ["repositoryRef", "number"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:write"]
}
}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Orchestration Plan","slug":"gitea-orchestration-plan"},"spec":{"canonicalName":"gitea.orchestration.plan","version":"1.5.0","connectorType":"gitea","description":"Preview exact default-branch SHAs and safe branches for a bounded multi-repository change.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRefs":{"type":"array","minItems":1,"maxItems":10,"uniqueItems":true,"items":{"type":"string"}},"branchSuffix":{"type":"string","pattern":"^[a-z0-9][a-z0-9._-]{0,79}$"}},"required":["repositoryRefs","branchSuffix"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":60000,"maxOutputBytes":524288,"maxItems":10},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Orchestration Start","slug":"gitea-orchestration-start"},"spec":{"canonicalName":"gitea.orchestration.start","version":"1.5.0","connectorType":"gitea","description":"Create or resume one preflighted safe codex branch in each of at most ten repositories.","riskClass":"R2","readOnly":false,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRefs":{"type":"array","minItems":1,"maxItems":10,"uniqueItems":true,"items":{"type":"string"}},"branchSuffix":{"type":"string","pattern":"^[a-z0-9][a-z0-9._-]{0,79}$"},"expectedOrchestrationId":{"type":"string","pattern":"^[0-9a-f]{24}$"}},"required":["repositoryRefs","branchSuffix","expectedOrchestrationId"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":60000,"maxOutputBytes":524288,"maxItems":10},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Portfolio Governance Apply","slug":"gitea-portfolio-governance-apply"},"spec":{"canonicalName":"gitea.portfolio.governance.apply","version":"1.8.0","connectorType":"gitea","description":"Apply and verify at most five exact repository governance plans in one bounded batch.","riskClass":"R2","readOnly":false,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"plans":{"type":"array","minItems":1,"maxItems":5,"uniqueItems":true,"items":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"planHash":{"type":"string","pattern":"^[0-9a-f]{64}$"}},"required":["repositoryRef","planHash"]}}},"required":["plans"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":120000,"maxOutputBytes":524288,"maxItems":5},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Portfolio Governance Preview","slug":"gitea-portfolio-governance-preview"},"spec":{"canonicalName":"gitea.portfolio.governance.preview","version":"1.8.0","connectorType":"gitea","description":"Preview managed validation and branch protection for at most 25 explicit repositories.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRefs":{"type":"array","minItems":1,"maxItems":25,"uniqueItems":true,"items":{"type":"string"}}},"required":["repositoryRefs"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":60000,"maxOutputBytes":524288,"maxItems":25},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Portfolio Governance Verify","slug":"gitea-portfolio-governance-verify"},"spec":{"canonicalName":"gitea.portfolio.governance.verify","version":"1.8.0","connectorType":"gitea","description":"Verify managed validation and default-branch protection for at most 25 repositories.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRefs":{"type":"array","minItems":1,"maxItems":25,"uniqueItems":true,"items":{"type":"string"}}},"required":["repositoryRefs"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":60000,"maxOutputBytes":524288,"maxItems":25},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Portfolio Health","slug":"gitea-portfolio-health"},"spec":{"canonicalName":"gitea.portfolio.health","version":"1.5.0","connectorType":"gitea","description":"Run bounded repository health checks across an explicit set of at most 25 repositories.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRefs":{"type":"array","minItems":1,"maxItems":25,"uniqueItems":true,"items":{"type":"string"}}},"required":["repositoryRefs"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":60000,"maxOutputBytes":524288,"maxItems":25},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1,28 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Pull Request Close", "slug": "gitea-pull-request-close"},
"spec": {
"canonicalName": "gitea.pullrequest.close",
"version": "1.14.0",
"connectorType": "gitea",
"description": "Close one open pull request only when its exact current head SHA matches.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"number": {"type": "integer", "minimum": 1, "maximum": 2147483647},
"expectedHeadSha": {"type": "string", "pattern": "^[0-9a-fA-F]{40,64}$"}
},
"required": ["repositoryRef", "number", "expectedHeadSha"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:write"]
}
}
@@ -0,0 +1,30 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Pull Request Create", "slug": "gitea-pull-request-create"},
"spec": {
"canonicalName": "gitea.pullrequest.create",
"version": "1.9.0",
"connectorType": "gitea",
"description": "Open one pull request from any valid branch. This tool cannot merge the pull request.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"head": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$", "maxLength": 300},
"base": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$", "maxLength": 300},
"title": {"type": "string", "minLength": 1, "maxLength": 500},
"body": {"type": "string", "maxLength": 32000, "default": ""}
},
"required": ["repositoryRef", "head", "base", "title"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:write"]
}
}
@@ -0,0 +1,13 @@
{
"apiVersion": "hub.example.com/v1alpha1", "kind": "ToolManifest",
"metadata": {"name": "Gitea Pull Request Feedback", "slug": "gitea-pull-request-feedback"},
"spec": {
"canonicalName": "gitea.pullrequest.feedback", "version": "1.3.0", "connectorType": "gitea",
"description": "Read review decisions and bounded inline feedback for one pull request.",
"riskClass": "R1", "readOnly": true, "idempotent": true,
"inputSchema": {"type": "object", "additionalProperties": false, "properties": {"repositoryRef": {"type": "string"}, "number": {"type": "integer", "minimum": 1}}, "required": ["repositoryRef", "number"]},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 100},
"redactionProfile": "documents", "requiredScopes": ["project:{project}:read"]
}
}
+27
View File
@@ -0,0 +1,27 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Pull Request Get", "slug": "gitea-pull-request-get"},
"spec": {
"canonicalName": "gitea.pullrequest.get",
"version": "1.0.0",
"connectorType": "gitea",
"description": "Read one pull request and a bounded changed-file summary without returning unrestricted patch content.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"number": {"type": "integer", "minimum": 1, "maximum": 2147483647}
},
"required": ["repositoryRef", "number"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 10000, "maxOutputBytes": 262144, "maxItems": 100},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:read"]
}
}
@@ -0,0 +1,28 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Pull Request List", "slug": "gitea-pull-request-list"},
"spec": {
"canonicalName": "gitea.pullrequest.list",
"version": "1.0.0",
"connectorType": "gitea",
"description": "List pull-request metadata for a registered project repository without modifying it.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"limit": {"type": "integer", "minimum": 1, "maximum": 100, "default": 25},
"cursor": {"type": ["string", "null"], "maxLength": 500, "default": null}
},
"required": ["repositoryRef"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 10000, "maxOutputBytes": 262144, "maxItems": 100},
"redactionProfile": "metadata",
"requiredScopes": ["project:{project}:read"]
}
}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Pull Request Merge","slug":"gitea-pull-request-merge"},"spec":{"canonicalName":"gitea.pullrequest.merge","version":"1.4.0","connectorType":"gitea","description":"Merge a verified, canonical-PR-validated and SHA-locked safe-branch PR into the default branch.","riskClass":"R3","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"number":{"type":"integer","minimum":1},"expectedHeadSha":{"type":"string","pattern":"^[0-9a-fA-F]{40,64}$"},"method":{"type":"string","enum":["merge","rebase","rebase-merge","squash","fast-forward-only"],"default":"squash"}},"required":["repositoryRef","number","expectedHeadSha"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Pull Request Sync","slug":"gitea-pull-request-sync"},"spec":{"canonicalName":"gitea.pullrequest.sync","version":"1.12.0","connectorType":"gitea","description":"Preview or merge/rebase an open pull-request after optimistic double-read fencing of its expected head and base SHAs; every execution invalidates validation state.","riskClass":"R3","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"number":{"type":"integer","minimum":1},"expectedHeadSha":{"type":"string","pattern":"^[0-9a-fA-F]{40,64}$"},"expectedBaseSha":{"type":"string","pattern":"^[0-9a-fA-F]{40,64}$"},"strategy":{"type":"string","enum":["merge","rebase"]},"dryRun":{"type":"boolean"}},"required":["repositoryRef","number","expectedHeadSha","expectedBaseSha","strategy","dryRun"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Pull Request Update","slug":"gitea-pull-request-update"},"spec":{"canonicalName":"gitea.pullrequest.update","version":"1.4.0","connectorType":"gitea","description":"Update only the title or body of an open safe-branch PR with an exact head SHA lock.","riskClass":"R2","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"number":{"type":"integer","minimum":1},"expectedHeadSha":{"type":"string","pattern":"^[0-9a-fA-F]{40,64}$"},"title":{"type":["string","null"],"minLength":1,"maxLength":500},"body":{"type":["string","null"],"maxLength":32000}},"required":["repositoryRef","number","expectedHeadSha"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":15000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea PR Validation Ensure","slug":"gitea-pullrequest-validation-ensure"},"spec":{"canonicalName":"gitea.pullrequest.validation.ensure","version":"1.15.0","connectorType":"gitea","description":"Reuse or trigger a real canonical full pull_request validation for an exact PR head.","riskClass":"R2","readOnly":false,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"number":{"type":"integer","minimum":1},"expectedHeadSha":{"type":"string","pattern":"^[0-9a-fA-F]{40,64}$"}},"required":["repositoryRef","number","expectedHeadSha"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Ref Compare","slug":"gitea-ref-compare"},"spec":{"canonicalName":"gitea.ref.compare","version":"1.4.0","connectorType":"gitea","description":"Compare two safe Git refs with bounded commit and changed-file projections.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"base":{"type":"string","minLength":1,"maxLength":300},"head":{"type":"string","minLength":1,"maxLength":300}},"required":["repositoryRef","base","head"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":20000,"maxOutputBytes":524288,"maxItems":200},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+117
View File
@@ -0,0 +1,117 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Release List",
"slug": "gitea-release-list"
},
"spec": {
"canonicalName": "gitea.release.list",
"version": "1.0.0",
"connectorType": "gitea",
"description": "List releases and tags for a registered repository.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": [
"repositoryRef"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"tag": {
"type": "string",
"maxLength": 300
},
"title": {
"type": "string",
"maxLength": 500
},
"draft": {
"type": "boolean"
},
"prerelease": {
"type": "boolean"
},
"publishedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"required": [
"tag",
"title",
"draft",
"prerelease",
"publishedAt"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,14 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Repository Context", "slug": "gitea-repository-context"},
"spec": {
"canonicalName": "gitea.repository.context", "version": "1.4.0", "connectorType": "gitea",
"description": "Load a compact repository bootstrap context; use tree.list and file.read for additional detail.",
"riskClass": "R1", "readOnly": true, "idempotent": true,
"inputSchema": {"type": "object", "additionalProperties": false, "properties": {"repositoryRef": {"type": "string"}, "ref": {"type": ["string", "null"], "maxLength": 300}}, "required": ["repositoryRef"]},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 30000, "maxOutputBytes": 65536, "maxItems": 64},
"redactionProfile": "documents", "requiredScopes": ["project:{project}:read"]
}
}
@@ -0,0 +1,30 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Repository Create", "slug": "gitea-repository-create"},
"spec": {
"canonicalName": "gitea.repository.create",
"version": "1.8.0",
"connectorType": "gitea",
"description": "Create or idempotently reuse a branch-ready repository owned by the fixed server-side Gitea write owner. autoInit must be true; an existing empty repository is initialized and the default-branch head is verified before the stable repositoryRef is returned.",
"riskClass": "R2",
"readOnly": false,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9_.-]{0,119}$"},
"description": {"type": "string", "maxLength": 2000},
"private": {"type": "boolean"},
"autoInit": {"type": "boolean", "const": true, "description": "Must be true so the default branch exists before the tool returns."},
"defaultBranch": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"}
},
"required": ["name", "description", "private", "autoInit", "defaultBranch"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 20000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:write"]
}
}
+95
View File
@@ -0,0 +1,95 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Repository Get",
"slug": "gitea-repository-get"
},
"spec": {
"canonicalName": "gitea.repository.get",
"version": "1.0.0",
"connectorType": "gitea",
"description": "Read metadata for a registered project repository.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
}
},
"required": [
"repositoryRef"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"name": {
"type": "string",
"maxLength": 200
},
"owner": {
"type": "string",
"maxLength": 200
},
"private": {
"type": "boolean"
},
"defaultBranch": {
"type": [
"string",
"null"
],
"maxLength": 200
},
"description": {
"type": [
"string",
"null"
],
"maxLength": 2000
},
"updatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"repositoryRef",
"name",
"owner",
"private",
"defaultBranch",
"description",
"updatedAt",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Repository Health","slug":"gitea-repository-health"},"spec":{"canonicalName":"gitea.repository.health","version":"1.4.0","connectorType":"gitea","description":"Audit branch protection, safe-branch sprawl, open pull requests and managed validation readiness.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"}},"required":["repositoryRef"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":20000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+112
View File
@@ -0,0 +1,112 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Gitea Repository List",
"slug": "gitea-repository-list"
},
"spec": {
"canonicalName": "gitea.repository.list",
"version": "1.0.0",
"connectorType": "gitea",
"description": "List repositories registered for the current project without exposing credentials.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"name": {
"type": "string",
"maxLength": 200
},
"owner": {
"type": "string",
"maxLength": 200
},
"private": {
"type": "boolean"
},
"defaultBranch": {
"type": [
"string",
"null"
],
"maxLength": 200
}
},
"required": [
"repositoryRef",
"name",
"owner",
"private",
"defaultBranch"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
+37
View File
@@ -0,0 +1,37 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Research Fetch", "slug": "gitea-research-fetch"},
"spec": {
"canonicalName": "gitea.research.fetch",
"connectorToolName": "fetch",
"exposedNames": ["fetch", "itworx-gitea-fetch"],
"version": "1.6.0",
"connectorType": "gitea",
"description": "Fetch one immutable repository document returned by research search using the standard Company Knowledge fetch contract.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {"id": {"type": "string", "minLength": 1, "maxLength": 4096}},
"required": ["id"]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {"type": "string", "maxLength": 4096},
"title": {"type": "string", "maxLength": 512},
"text": {"type": "string", "maxLength": 200000},
"url": {"type": "string", "format": "uri", "maxLength": 4096},
"metadata": {"type": ["object", "null"]}
},
"required": ["id", "title", "text", "url", "metadata"]
},
"limits": {"timeoutMs": 30000, "maxOutputBytes": 262144, "maxItems": 1},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:read"]
}
}
+46
View File
@@ -0,0 +1,46 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Research Search", "slug": "gitea-research-search"},
"spec": {
"canonicalName": "gitea.research.search",
"connectorToolName": "search",
"exposedNames": ["search", "itworx-gitea-search"],
"version": "1.6.0",
"connectorType": "gitea",
"description": "Search a bounded set of registered private Gitea repositories and return immutable citable documents through the standard Company Knowledge search contract.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {"query": {"type": "string", "minLength": 1, "maxLength": 500}},
"required": ["query"]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"results": {
"type": "array",
"maxItems": 20,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {"type": "string", "maxLength": 4096},
"title": {"type": "string", "maxLength": 512},
"url": {"type": "string", "format": "uri", "maxLength": 4096}
},
"required": ["id", "title", "url"]
}
}
},
"required": ["results"]
},
"limits": {"timeoutMs": 120000, "maxOutputBytes": 262144, "maxItems": 20},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:read"]
}
}
+19
View File
@@ -0,0 +1,19 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea MCP Self-test", "slug": "gitea-selftest-run"},
"spec": {
"canonicalName": "gitea.selftest.run",
"version": "1.12.0",
"connectorType": "gitea",
"description": "Run bounded non-mutating handler-parity, Gitea connectivity, write-runtime and managed-Actions probes. Use this to diagnose an MCP connection before repository work.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {"type": "object", "additionalProperties": false, "properties": {"mode": {"type": "string", "enum": ["read", "guarded-write"], "default": "read"}}},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 30000, "maxOutputBytes": 65536, "maxItems": 10},
"redactionProfile": "strict",
"requiredScopes": ["project:{project}:read"]
}
}
+28
View File
@@ -0,0 +1,28 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Gitea Tree List", "slug": "gitea-tree-list"},
"spec": {
"canonicalName": "gitea.tree.list",
"version": "1.2.0",
"connectorType": "gitea",
"description": "List up to 1000 files and directories at one bounded repository path and optional branch or ref.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"repositoryRef": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,127}$"},
"path": {"type": "string", "maxLength": 2048, "default": ""},
"ref": {"type": ["string", "null"], "maxLength": 300}
},
"required": ["repositoryRef"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 15000, "maxOutputBytes": 262144, "maxItems": 1000},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:read"]
}
}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Validation Failure Get","slug":"gitea-validation-failure-get"},"spec":{"canonicalName":"gitea.validation.failure.get","version":"1.12.0","connectorType":"gitea","description":"Extract bounded failure-relevant steps, commands, exit codes and sanitized log excerpts from one managed validation run.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"runId":{"type":"integer","minimum":1}},"required":["repositoryRef","runId"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"logs","requiredScopes":["project:{project}:read"]}}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Validation Get","slug":"gitea-validation-get"},"spec":{"canonicalName":"gitea.validation.get","version":"1.10.0","connectorType":"gitea","description":"Use this for one selected validation run. Omit logs unless diagnosing a failure; respect pollAfterMs while terminal=false.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"runId":{"type":"integer","minimum":1},"includeLogs":{"type":"boolean","default":false}},"required":["repositoryRef","runId"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"logs","requiredScopes":["project:{project}:read"]}}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Validation List","slug":"gitea-validation-list"},"spec":{"canonicalName":"gitea.validation.list","version":"1.9.0","connectorType":"gitea","description":"List durable managed validation runs for any valid branch.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"},"limit":{"type":"integer","minimum":1,"maximum":100},"cursor":{"type":["string","null"]}},"required":["repositoryRef","branch"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":15000,"maxOutputBytes":262144,"maxItems":100},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Validation Run","slug":"gitea-validation-run"},"spec":{"canonicalName":"gitea.validation.run","version":"1.10.0","connectorType":"gitea","description":"Use this to dispatch or retry one repository-owned, allowlisted validation profile on any valid branch.","riskClass":"R2","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"},"profile":{"type":"string","enum":["test","lint","typecheck","build","security","full"]}},"required":["repositoryRef","branch","profile"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":15000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"logs","requiredScopes":["project:{project}:write"]}}
+1
View File
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Workspace Run","slug":"gitea-workspace-run"},"spec":{"canonicalName":"gitea.workspace.run","version":"1.10.0","connectorType":"gitea","description":"Use this to dispatch or retry one fixed-profile managed Actions job, then follow workspace status polling hints.","riskClass":"R2","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"},"profile":{"type":"string","enum":["test","lint","typecheck","build","security","full"]}},"required":["repositoryRef","branch","profile"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":15000,"maxOutputBytes":262144,"maxItems":1},"redactionProfile":"logs","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"Gitea Workspace Status","slug":"gitea-workspace-status"},"spec":{"canonicalName":"gitea.workspace.status","version":"1.10.0","connectorType":"gitea","description":"Use this to resume a managed repository workspace. Respect pollAfterMs and repeat only while terminal=false.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repositoryRef":{"type":"string"},"branch":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9._/-]{0,299}$"}},"required":["repositoryRef","branch"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":131072,"maxItems":25},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
+141
View File
@@ -0,0 +1,141 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Hub Analyze",
"slug": "ingestion-analyze"
},
"spec": {
"canonicalName": "knowledge.ingestion.analyze",
"connectorToolName": "analyze_knowledge_files",
"exposedNames": [
"analyze_knowledge_files"
],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "After reading attached content with extract_knowledge_files and checking the Knowledge Hub destination, rescan the source files and create a complete proposal for human review.",
"riskClass": "R2",
"readOnly": false,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string",
"format": "uuid",
"description": "Optional target project UUID. If omitted, the operation uses the Knowledge Hub workspace; this requires the default-off server policy and the trusted knowledge-hub/prod connector identity. A supplied UUID remains strictly allowlisted."
},
"files": {
"type": "array",
"minItems": 1,
"maxItems": 5,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"download_url": {
"type": "string",
"format": "uri",
"maxLength": 8192
},
"file_id": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Opaque attachment reference; preserve its exact value. Must contain 1–128 printable Unicode characters."
},
"mime_type": {
"type": "string",
"maxLength": 128
},
"file_name": {
"type": "string",
"maxLength": 255
}
},
"required": [
"download_url",
"file_id"
]
}
},
"manifest": {
"type": "string",
"minLength": 1,
"maxLength": 10000
},
"publication": {
"type": "object",
"additionalProperties": false,
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 300
},
"markdown": {
"type": "string",
"minLength": 1,
"maxLength": 32000
},
"document_type": {
"type": "string",
"maxLength": 64
},
"document_status": {
"type": "string",
"maxLength": 64
},
"mutation_kind": {
"type": "string",
"enum": [
"CreatePage",
"UpdatePage"
]
},
"parent_page_id": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"target_page_id": {
"type": "string",
"format": "uuid"
},
"expected_target_etag": {
"type": "string",
"maxLength": 256
}
},
"required": [
"title",
"markdown",
"document_type",
"document_status",
"mutation_kind"
]
}
},
"required": [
"files",
"manifest",
"publication"
]
},
"outputSchema": {
"type": "object"
},
"limits": {
"timeoutMs": 120000,
"maxOutputBytes": 131072,
"maxItems": 20
},
"redactionProfile": "strict",
"requiredScopes": [
"project:{project}:write"
]
}
}
+46
View File
@@ -0,0 +1,46 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Hub Context",
"slug": "ingestion-context"
},
"spec": {
"canonicalName": "knowledge.ingestion.context",
"connectorToolName": "get_knowledge_context",
"exposedNames": [
"get_knowledge_context"
],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Get bounded project context with citations.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string",
"format": "uuid"
}
},
"required": [
"project_id"
]
},
"outputSchema": {
"type": "object"
},
"limits": {
"timeoutMs": 30000,
"maxOutputBytes": 131072,
"maxItems": 20
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
+88
View File
@@ -0,0 +1,88 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Hub Attachment Text",
"slug": "ingestion-extract"
},
"spec": {
"canonicalName": "knowledge.ingestion.extract",
"connectorToolName": "extract_knowledge_files",
"exposedNames": [
"extract_knowledge_files"
],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Scan and extract attached file text in explicit 12,000-character pages with per-file SHA-256 and coverage. This read has no proposal side effects; continue until allFilesComplete is true.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string",
"format": "uuid",
"description": "Optional target project UUID. If omitted, the operation uses the Knowledge Hub workspace; this requires the default-off server policy and the trusted knowledge-hub/prod connector identity. A supplied UUID remains strictly allowlisted."
},
"files": {
"type": "array",
"minItems": 1,
"maxItems": 5,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"download_url": {
"type": "string",
"format": "uri",
"maxLength": 8192
},
"file_id": {
"type": "string",
"minLength": 1,
"maxLength": 128,
"description": "Opaque attachment reference; preserve its exact value. Must contain 1–128 printable Unicode characters."
},
"mime_type": {
"type": "string",
"maxLength": 128
},
"file_name": {
"type": "string",
"maxLength": 255
}
},
"required": [
"download_url",
"file_id"
]
}
},
"page_cursor": {
"type": [
"string",
"null"
],
"maxLength": 256
}
},
"required": [
"files"
]
},
"outputSchema": {
"type": "object"
},
"limits": {
"timeoutMs": 120000,
"maxOutputBytes": 131072,
"maxItems": 5
},
"redactionProfile": "strict",
"requiredScopes": [
"project:{project}:write"
]
}
}
+61
View File
@@ -0,0 +1,61 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Hub Search",
"slug": "ingestion-search"
},
"spec": {
"canonicalName": "knowledge.ingestion.search",
"connectorToolName": "search_knowledge",
"exposedNames": [
"search_knowledge"
],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Search bounded Knowledge Hub content for the authorized project.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"project_id": {
"type": "string",
"format": "uuid",
"description": "Optional target project UUID. If omitted, the operation uses the Knowledge Hub workspace; this requires the default-off server policy and the trusted knowledge-hub/prod connector identity. A supplied UUID remains strictly allowlisted."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20
},
"cursor": {
"type": "string",
"maxLength": 500
}
},
"required": [
"query"
]
},
"outputSchema": {
"type": "object"
},
"limits": {
"timeoutMs": 30000,
"maxOutputBytes": 131072,
"maxItems": 20
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
+51
View File
@@ -0,0 +1,51 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Hub Status",
"slug": "ingestion-status"
},
"spec": {
"canonicalName": "knowledge.ingestion.status",
"connectorToolName": "get_ingestion_status",
"exposedNames": [
"get_ingestion_status"
],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Read the status of a proposal submitted by this service account.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string",
"format": "uuid",
"description": "Optional target project UUID. If omitted, the operation uses the Knowledge Hub workspace; this requires the default-off server policy and the trusted knowledge-hub/prod connector identity. A supplied UUID remains strictly allowlisted."
},
"proposal_id": {
"type": "string",
"format": "uuid"
}
},
"required": [
"proposal_id"
]
},
"outputSchema": {
"type": "object"
},
"limits": {
"timeoutMs": 30000,
"maxOutputBytes": 131072,
"maxItems": 20
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
+57
View File
@@ -0,0 +1,57 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Hub Submit",
"slug": "ingestion-submit"
},
"spec": {
"canonicalName": "knowledge.ingestion.submit",
"connectorToolName": "submit_ingestion_proposal",
"exposedNames": [
"submit_ingestion_proposal"
],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Submit service-account analysis for mandatory human review; never publish.",
"riskClass": "R2",
"readOnly": false,
"idempotent": false,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string",
"format": "uuid",
"description": "Optional target project UUID. If omitted, the operation uses the Knowledge Hub workspace; this requires the default-off server policy and the trusted knowledge-hub/prod connector identity. A supplied UUID remains strictly allowlisted."
},
"proposal_id": {
"type": "string",
"format": "uuid"
},
"analysis": {
"type": "string",
"minLength": 1,
"maxLength": 32000
}
},
"required": [
"proposal_id",
"analysis"
]
},
"outputSchema": {
"type": "object"
},
"limits": {
"timeoutMs": 30000,
"maxOutputBytes": 131072,
"maxItems": 20
},
"redactionProfile": "strict",
"requiredScopes": [
"project:{project}:write"
]
}
}
+149
View File
@@ -0,0 +1,149 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Hub Gitea Text Proposal",
"slug": "ingestion-text-proposal"
},
"spec": {
"canonicalName": "knowledge.ingestion.text_proposal",
"connectorToolName": "create_text_source_proposal",
"exposedNames": [
"create_text_source_proposal"
],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Scan bounded text already read by the separate Gitea MCP and create a complete Knowledge Hub proposal for human review. Source completeness and URI/ref/commit/SHA provenance are caller asserted; the supplied UTF-8 text must match the full Git blob SHA. The connector does not fetch a repository or independently verify its provenance.",
"riskClass": "R2",
"readOnly": false,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string",
"format": "uuid",
"description": "Optional target project UUID. If omitted, the operation uses the Knowledge Hub workspace; this requires the default-off server policy and the trusted knowledge-hub/prod connector identity. A supplied UUID remains strictly allowlisted."
},
"source_file_name": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"source_text": {
"type": "string",
"minLength": 1,
"maxLength": 100000
},
"source_complete": {
"type": "boolean",
"const": true
},
"source_uri": {
"type": "string",
"pattern": "^itworx-git://",
"maxLength": 2048
},
"source_ref": {
"type": "string",
"minLength": 1,
"maxLength": 300
},
"source_commit": {
"type": "string",
"pattern": "^[a-fA-F0-9]{7,64}$"
},
"source_sha": {
"type": "string",
"pattern": "^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"
},
"manifest": {
"type": "string",
"minLength": 1,
"maxLength": 10000
},
"publication": {
"type": "object",
"additionalProperties": false,
"properties": {
"title": {
"type": "string",
"minLength": 1,
"maxLength": 300
},
"markdown": {
"type": "string",
"minLength": 1,
"maxLength": 32000
},
"document_type": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"document_status": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"mutation_kind": {
"type": "string",
"enum": [
"CreatePage",
"UpdatePage"
]
},
"parent_page_id": {
"type": [
"string",
"null"
],
"format": "uuid",
"description": "For CreatePage, pass the selected parent UUID or null to explicitly choose the workspace root."
},
"target_page_id": {
"type": "string",
"format": "uuid"
},
"expected_target_etag": {
"type": "string",
"minLength": 1,
"maxLength": 256
}
},
"required": [
"title",
"markdown",
"document_type",
"document_status",
"mutation_kind"
]
}
},
"required": [
"source_file_name",
"source_text",
"source_complete",
"source_uri",
"source_ref",
"source_commit",
"source_sha",
"manifest",
"publication"
]
},
"outputSchema": {
"type": "object"
},
"limits": {
"timeoutMs": 120000,
"maxOutputBytes": 131072,
"maxItems": 1
},
"redactionProfile": "strict",
"requiredScopes": [
"project:{project}:write"
]
}
}
@@ -0,0 +1,29 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Knowledge Hub Page Children", "slug": "ingestion-workspace-children"},
"spec": {
"canonicalName": "knowledge.workspace.children",
"connectorToolName": "get_workspace_children",
"exposedNames": ["get_workspace_children"],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Browse one cursor-paged child slice beneath a selected Knowledge Hub page. Use this to locate a destination; workspace reads require explicit server opt-in.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object", "additionalProperties": false,
"properties": {
"parent_page_id": {"type": "string", "format": "uuid"},
"limit": {"type": "integer", "minimum": 1, "maximum": 100, "default": 50},
"cursor": {"type": ["string", "null"], "maxLength": 500}
},
"required": ["parent_page_id"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 30000, "maxOutputBytes": 131072, "maxItems": 100},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:read"]
}
}
@@ -0,0 +1,30 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Knowledge Hub Current Page", "slug": "ingestion-workspace-page"},
"spec": {
"canonicalName": "knowledge.workspace.page",
"connectorToolName": "get_workspace_page",
"exposedNames": ["get_workspace_page"],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Read current Markdown, breadcrumbs, revision and ETag in bounded pages. Pass the returned ETag on subsequent offsets and as expected_target_etag for an update proposal; never compare an incomplete page as complete.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object", "additionalProperties": false,
"properties": {
"page_id": {"type": "string", "format": "uuid"},
"offset_chars": {"type": "integer", "minimum": 0, "maximum": 1000000, "default": 0},
"max_chars": {"type": "integer", "minimum": 1, "maximum": 20000, "default": 20000},
"expected_etag": {"type": ["string", "null"], "maxLength": 256}
},
"required": ["page_id"]
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 30000, "maxOutputBytes": 131072, "maxItems": 1},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:read"]
}
}
@@ -0,0 +1,28 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {"name": "Knowledge Hub Page Roots", "slug": "ingestion-workspace-roots"},
"spec": {
"canonicalName": "knowledge.workspace.roots",
"connectorToolName": "get_workspace_roots",
"exposedNames": ["get_workspace_roots"],
"version": "1.0.0",
"connectorType": "ingestion",
"description": "Browse one paged slice of roots in the fixed, token-scoped Knowledge Hub workspace. Server-side workspace reads are disabled unless explicitly enabled.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object", "additionalProperties": false,
"properties": {
"limit": {"type": "integer", "minimum": 1, "maximum": 100, "default": 50},
"cursor": {"type": ["string", "null"], "maxLength": 500}
},
"required": []
},
"outputSchema": {"type": "object"},
"limits": {"timeoutMs": 30000, "maxOutputBytes": 131072, "maxItems": 100},
"redactionProfile": "documents",
"requiredScopes": ["project:{project}:read"]
}
}
+124
View File
@@ -0,0 +1,124 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Adr List",
"slug": "knowledge-adr-list"
},
"spec": {
"canonicalName": "knowledge.adr.list",
"version": "1.0.0",
"connectorType": "knowledge",
"description": "List architecture decision records available to the current project.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"status": {
"enum": [
"accepted",
"proposed",
"deprecated",
"superseded",
"all"
],
"default": "all"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"uri": {
"type": "string",
"minLength": 1,
"maxLength": 2048
},
"number": {
"type": "string",
"maxLength": 40
},
"title": {
"type": "string",
"maxLength": 300
},
"status": {
"type": "string",
"maxLength": 50
},
"updatedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"required": [
"uri",
"number",
"title",
"status",
"updatedAt"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
+83
View File
@@ -0,0 +1,83 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Document Get",
"slug": "knowledge-document-get"
},
"spec": {
"canonicalName": "knowledge.document.get",
"version": "1.0.0",
"connectorType": "knowledge",
"description": "Read one authorized document resource by its Hub URI.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"uri": {
"type": "string",
"pattern": "^itworx-docs://",
"maxLength": 2048
}
},
"required": [
"uri"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"uri": {
"type": "string",
"minLength": 1,
"maxLength": 2048
},
"title": {
"type": "string",
"maxLength": 300
},
"mimeType": {
"type": "string",
"maxLength": 100
},
"content": {
"type": "string",
"maxLength": 200000
},
"sourceRevision": {
"type": "string",
"maxLength": 200
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"uri",
"title",
"mimeType",
"content",
"sourceRevision",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 1
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,138 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Document Search",
"slug": "knowledge-document-search"
},
"spec": {
"canonicalName": "knowledge.document.search",
"version": "1.0.0",
"connectorType": "knowledge",
"description": "Search authorized indexed project documents and return bounded source-cited hits.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"sourceTypes": {
"type": "array",
"uniqueItems": true,
"maxItems": 8,
"items": {
"enum": [
"documentation",
"adr",
"runbook",
"readme",
"current-state",
"release-note"
]
}
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 10
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": [
"query"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"uri": {
"type": "string",
"minLength": 1,
"maxLength": 2048
},
"title": {
"type": "string",
"maxLength": 300
},
"snippet": {
"type": "string",
"maxLength": 2000
},
"sourceType": {
"type": "string",
"maxLength": 80
},
"sourceRevision": {
"type": "string",
"maxLength": 200
},
"score": {
"type": "number",
"minimum": 0
}
},
"required": [
"uri",
"title",
"snippet",
"sourceType",
"sourceRevision",
"score"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 131072,
"maxItems": 20
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
+81
View File
@@ -0,0 +1,81 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Index Status",
"slug": "knowledge-index-status"
},
"spec": {
"canonicalName": "knowledge.index.status",
"version": "1.0.0",
"connectorType": "knowledge",
"description": "Return read-only index freshness, source count and last indexing result.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"status": {
"enum": [
"ready",
"indexing",
"stale",
"failed",
"empty"
]
},
"sourceCount": {
"type": "integer",
"minimum": 0
},
"documentCount": {
"type": "integer",
"minimum": 0
},
"lastCompletedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"lastError": {
"type": [
"string",
"null"
],
"maxLength": 1000
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"status",
"sourceCount",
"documentCount",
"lastCompletedAt",
"lastError",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,65 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Project Summary",
"slug": "knowledge-project-summary"
},
"spec": {
"canonicalName": "knowledge.project.summary",
"version": "1.0.0",
"connectorType": "knowledge",
"description": "Return a concise sourced summary of the registered project documentation state.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"summary": {
"type": "string",
"maxLength": 12000
},
"sources": {
"type": "array",
"maxItems": 50,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 2048
}
},
"sourceRevision": {
"type": "string",
"maxLength": 200
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"summary",
"sources",
"sourceRevision",
"generatedAt"
]
},
"limits": {
"timeoutMs": 15000,
"maxOutputBytes": 131072,
"maxItems": 50
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
+134
View File
@@ -0,0 +1,134 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Knowledge Source List",
"slug": "knowledge-source-list"
},
"spec": {
"canonicalName": "knowledge.source.list",
"version": "1.0.0",
"connectorType": "knowledge",
"description": "List registered documentation sources and their indexing state for the current project.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"sourceType": {
"type": [
"string",
"null"
],
"maxLength": 80
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 25
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"sourceRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"sourceType": {
"type": "string",
"maxLength": 80
},
"uri": {
"type": "string",
"maxLength": 2048
},
"status": {
"enum": [
"ready",
"indexing",
"stale",
"failed",
"empty",
"disabled"
]
},
"sourceRevision": {
"type": [
"string",
"null"
],
"maxLength": 200
},
"lastIndexedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
}
},
"required": [
"sourceRef",
"sourceType",
"uri",
"status",
"sourceRevision",
"lastIndexedAt"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 131072,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,78 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Fleet Ops Attention List",
"slug": "mobilityops-attention-list"
},
"spec": {
"canonicalName": "mobilityops.attention.list",
"version": "1.0.0",
"connectorType": "mobilityops",
"description": "List Fleet Ops vehicles currently needing attention, filtered by minimum severity.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum_severity": {
"type": "string",
"enum": ["low", "medium", "high"]
},
"date": {
"type": ["string", "null"],
"format": "date"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50
}
}
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 50,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"vehicleRef": {"type": "string", "maxLength": 64},
"severity": {"type": "string", "maxLength": 32},
"ruleType": {"type": "string", "maxLength": 120},
"summary": {"type": "string", "maxLength": 1000},
"detectedAt": {"type": "string", "maxLength": 64}
},
"required": ["vehicleRef", "severity", "ruleType", "summary", "detectedAt"]
}
},
"nextCursor": {
"type": ["string", "null"]
},
"truncated": {
"type": "boolean"
}
},
"required": [
"items",
"nextCursor",
"truncated"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 131072,
"maxItems": 50
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,83 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Fleet Ops Knowledge Search",
"slug": "mobilityops-knowledge-search"
},
"spec": {
"canonicalName": "mobilityops.knowledge.search",
"version": "1.0.0",
"connectorType": "mobilityops",
"description": "Ask a Fleet Ops procedure question in nl-BE, en-GB or fr-BE (default en-GB) and receive a grounded answer with citations, or an honest insufficient/unavailable result -- never a fabricated answer.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"question": {
"type": "string",
"minLength": 3,
"maxLength": 1000
},
"max_sources": {
"type": "integer",
"minimum": 1,
"maximum": 8
},
"locale": {
"type": "string",
"enum": ["nl-BE", "en-GB", "fr-BE"],
"default": "en-GB"
}
},
"required": [
"question"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"answer": {"type": "string", "maxLength": 4000},
"evidenceState": {"type": "string", "maxLength": 32},
"provider": {"type": ["string", "null"], "maxLength": 120},
"correlationId": {"type": ["string", "null"], "maxLength": 128},
"sources": {
"type": "array",
"maxItems": 8,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"documentId": {"type": "string", "maxLength": 200},
"title": {"type": "string", "maxLength": 300},
"version": {"type": "string", "maxLength": 120},
"section": {"type": "string", "maxLength": 300},
"excerpt": {"type": "string", "maxLength": 1500}
},
"required": ["documentId", "title", "version", "section", "excerpt"]
}
}
},
"required": [
"answer",
"evidenceState",
"provider",
"correlationId",
"sources"
]
},
"limits": {
"timeoutMs": 15000,
"maxOutputBytes": 65536,
"maxItems": 8
},
"redactionProfile": "documents",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,67 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Fleet Ops Operations Summary",
"slug": "mobilityops-operations-summary"
},
"spec": {
"canonicalName": "mobilityops.operations.summary",
"version": "1.0.0",
"connectorType": "mobilityops",
"description": "Read the Fleet Ops fleet-wide operational metrics summary.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"tenant": {
"type": "string",
"maxLength": 200
},
"metrics": {
"type": "object",
"additionalProperties": false,
"properties": {
"available": {"type": "integer"},
"rented": {"type": "integer"},
"cleaning": {"type": "integer"},
"maintenance": {"type": "integer"},
"blocked": {"type": "integer"},
"openQualityIssues": {"type": "integer"},
"pendingOrFailedWorkflows": {"type": "integer"}
},
"required": [
"available",
"rented",
"cleaning",
"maintenance",
"blocked",
"openQualityIssues",
"pendingOrFailedWorkflows"
]
}
},
"required": [
"tenant",
"metrics"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 65536,
"maxItems": 1
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,67 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Fleet Ops Vehicle Get",
"slug": "mobilityops-vehicle-get"
},
"spec": {
"canonicalName": "mobilityops.vehicle.get",
"version": "1.0.0",
"connectorType": "mobilityops",
"description": "Read narrow, read-only status details for one Fleet Ops vehicle by its public reference.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"vehicleRef": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9-]{0,63}$"
}
},
"required": [
"vehicleRef"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"publicRef": {"type": "string", "maxLength": 64},
"make": {"type": "string", "maxLength": 120},
"model": {"type": "string", "maxLength": 120},
"modelYear": {"type": "integer"},
"location": {"type": "string", "maxLength": 200},
"operationalStatus": {"type": "string", "maxLength": 64},
"odometerKm": {"type": "integer"},
"nextServiceKm": {"type": "integer"},
"openQualityIssueCount": {"type": "integer"},
"currentBookingRef": {"type": ["string", "null"], "maxLength": 64}
},
"required": [
"publicRef",
"make",
"model",
"modelYear",
"location",
"operationalStatus",
"odometerKm",
"nextServiceKm",
"openQualityIssueCount",
"currentBookingRef"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 65536,
"maxItems": 1
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,94 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Observability Health Summary",
"slug": "observability-health-summary"
},
"spec": {
"canonicalName": "observability.health.summary",
"version": "1.0.0",
"connectorType": "observability",
"description": "Return aggregate internal Hub and connector health with no secret-bearing diagnostics.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"status": {
"enum": [
"healthy",
"degraded",
"unavailable"
]
},
"components": {
"type": "array",
"maxItems": 200,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"status": {
"enum": [
"healthy",
"degraded",
"unavailable",
"disabled",
"misconfigured"
]
},
"latencyMs": {
"type": [
"number",
"null"
],
"minimum": 0
},
"lastCheckedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"name",
"status",
"latencyMs",
"lastCheckedAt"
]
}
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"status",
"components",
"generatedAt"
]
},
"limits": {
"timeoutMs": 10000,
"maxOutputBytes": 262144,
"maxItems": 100
},
"redactionProfile": "metadata",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1,133 @@
{
"apiVersion": "hub.example.com/v1alpha1",
"kind": "ToolManifest",
"metadata": {
"name": "Observability Logs Search",
"slug": "observability-logs-search"
},
"spec": {
"canonicalName": "observability.logs.search",
"version": "1.0.0",
"connectorType": "observability",
"description": "Search bounded redacted internal service logs for the current project context.",
"riskClass": "R1",
"readOnly": true,
"idempotent": true,
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"query": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"serviceRef": {
"type": [
"string",
"null"
],
"maxLength": 128
},
"lookbackMinutes": {
"type": "integer",
"minimum": 1,
"maximum": 1440,
"default": 60
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500,
"default": 100
},
"cursor": {
"type": [
"string",
"null"
],
"maxLength": 500,
"default": null
}
},
"required": []
},
"outputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"items": {
"type": "array",
"maxItems": 100,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"timestamp": {
"type": "string",
"format": "date-time"
},
"serviceRef": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{0,127}$"
},
"level": {
"type": "string",
"maxLength": 30
},
"message": {
"type": "string",
"maxLength": 4096
},
"traceId": {
"type": [
"string",
"null"
],
"maxLength": 128
}
},
"required": [
"timestamp",
"serviceRef",
"level",
"message",
"traceId"
]
}
},
"nextCursor": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"truncated": {
"type": "boolean"
},
"generatedAt": {
"type": "string",
"format": "date-time"
}
},
"required": [
"items",
"nextCursor",
"truncated",
"generatedAt"
]
},
"limits": {
"timeoutMs": 15000,
"maxOutputBytes": 262144,
"maxItems": 500
},
"redactionProfile": "logs",
"requiredScopes": [
"project:{project}:read"
]
}
}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Analysis Capabilities Get","slug":"opencode-analysis-capabilities-get"},"spec":{"canonicalName":"opencode.analysis.capabilities.get","version":"0.1.0","connectorType":"opencode-readonly","description":"List the read-only OpenCode analysis surface, registered workspaces, and enforced restrictions.","riskClass":"R0","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false},"outputSchema":{"type":"object"},"limits":{"timeoutMs":5000,"maxOutputBytes":65536,"maxItems":100},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Analysis Jobs List","slug":"opencode-analysis-jobs-list"},"spec":{"canonicalName":"opencode.analysis.jobs.list","version":"0.1.0","connectorType":"opencode-readonly","description":"List recent read-only analysis jobs without prompts or raw session identifiers.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"limit":{"type":"integer","minimum":1,"maximum":50}}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":5000,"maxOutputBytes":131072,"maxItems":50},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Analysis Models List","slug":"opencode-analysis-models-list"},"spec":{"canonicalName":"opencode.analysis.models.list","version":"0.1.0","connectorType":"opencode-readonly","description":"Check exact allowlisted models and connected providers for a registered read-only workspace.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"required":["workspace"],"properties":{"workspace":{"type":"string","pattern":"^[a-z][a-z0-9-]{1,62}$"}}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":65536,"maxItems":100},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Analysis Result","slug":"opencode-analysis-result"},"spec":{"canonicalName":"opencode.analysis.result","version":"0.1.0","connectorType":"opencode-readonly","description":"Return bounded analysis text and fail closed if the upstream reports any changed file.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"required":["job_id"],"properties":{"job_id":{"type":"string","pattern":"^job_[A-Za-z0-9_-]{8,64}$"}}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":200},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Analysis Start","slug":"opencode-analysis-start"},"spec":{"canonicalName":"opencode.analysis.start","version":"0.1.0","connectorType":"opencode-readonly","description":"Start an asynchronous plan-only analysis against a technically read-only registered workspace.","riskClass":"R1","readOnly":true,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"required":["workspace","goal","model"],"properties":{"workspace":{"type":"string","pattern":"^[a-z][a-z0-9-]{1,62}$"},"goal":{"type":"string","minLength":1,"maxLength":16000},"model":{"type":"string","minLength":3,"maxLength":200}}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":65536,"maxItems":100},"redactionProfile":"strict","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Analysis Status","slug":"opencode-analysis-status"},"spec":{"canonicalName":"opencode.analysis.status","version":"0.1.0","connectorType":"opencode-readonly","description":"Read the current state of a broker-owned read-only analysis job.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"required":["job_id"],"properties":{"job_id":{"type":"string","pattern":"^job_[A-Za-z0-9_-]{8,64}$"}}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":65536,"maxItems":100},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Capabilities Get","slug":"opencode-capabilities-get"},"spec":{"canonicalName":"opencode.capabilities.get","version":"0.1.0","connectorType":"opencode","description":"List the governed OpenCode job surface and registered workspace policies.","riskClass":"R0","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false},"outputSchema":{"type":"object"},"limits":{"timeoutMs":5000,"maxOutputBytes":65536,"maxItems":100},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Cancel","slug":"opencode-delivery-control-cancel"},"spec":{"canonicalName":"opencode.delivery.control.cancel","version":"0.3.0","connectorType":"opencode","description":"Cancel an active delivery after explicit confirmation while retaining its branch and audit trail.","riskClass":"R3","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"delivery_id":{"type":"string","pattern":"^delivery_[A-Za-z0-9_-]{8,64}$"},"confirm":{"type":"boolean"}},"required":["delivery_id","confirm"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":131072,"maxItems":200},"redactionProfile":"metadata","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Jobs List","slug":"opencode-delivery-control-jobs-list"},"spec":{"canonicalName":"opencode.delivery.control.jobs.list","version":"0.2.1","connectorType":"opencode","description":"List recent autonomous controller deliveries without prompts or provider session identifiers.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"limit":{"type":"integer","minimum":1,"maximum":50}}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":5000,"maxOutputBytes":131072,"maxItems":50},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Plan","slug":"opencode-delivery-control-plan"},"spec":{"canonicalName":"opencode.delivery.control.plan","version":"0.2.1","connectorType":"opencode","description":"Resolve the exact default-branch SHA and controlled delivery effects without mutation.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repository":{"type":"string","pattern":"^[a-z][a-z0-9-]{1,62}$"},"goal":{"type":"string","minLength":1,"maxLength":16000},"model":{"type":"string","minLength":3,"maxLength":200},"branch_suffix":{"type":"string","pattern":"^[a-z0-9][a-z0-9._-]{0,79}$"}},"required":["repository","goal","model","branch_suffix"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":131072,"maxItems":200},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Repositories List","slug":"opencode-delivery-control-repositories-list"},"spec":{"canonicalName":"opencode.delivery.control.repositories.list","version":"0.3.0","connectorType":"opencode","description":"List repositories, models, stages, and the external-Codex final-acceptance boundary.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":5000,"maxOutputBytes":131072,"maxItems":50},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Result","slug":"opencode-delivery-control-result"},"spec":{"canonicalName":"opencode.delivery.control.result","version":"0.3.0","connectorType":"opencode","description":"Return bounded changed paths, independent review, validation and PR evidence for external Codex final review.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"delivery_id":{"type":"string","pattern":"^delivery_[A-Za-z0-9_-]{8,64}$"}},"required":["delivery_id"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":500},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Retry","slug":"opencode-delivery-control-retry"},"spec":{"canonicalName":"opencode.delivery.control.retry","version":"0.3.0","connectorType":"opencode","description":"Retry only the recoverable failed phase of an audited delivery within its bounded retry budget.","riskClass":"R2","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"delivery_id":{"type":"string","pattern":"^delivery_[A-Za-z0-9_-]{8,64}$"},"confirm":{"type":"boolean"}},"required":["delivery_id","confirm"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":131072,"maxItems":200},"redactionProfile":"metadata","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Start","slug":"opencode-delivery-control-start"},"spec":{"canonicalName":"opencode.delivery.control.start","version":"0.2.1","connectorType":"opencode","description":"Start an exact SHA-locked branch, OpenChamber build, independent review, PR, checks, and merge-policy workflow.","riskClass":"R2","readOnly":false,"idempotent":false,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"repository":{"type":"string","pattern":"^[a-z][a-z0-9-]{1,62}$"},"goal":{"type":"string","minLength":1,"maxLength":16000},"model":{"type":"string","minLength":3,"maxLength":200},"branch_suffix":{"type":"string","pattern":"^[a-z0-9][a-z0-9._-]{0,79}$"},"expected_base_sha":{"type":"string","pattern":"^[0-9a-f]{40,64}$"}},"required":["repository","goal","model","branch_suffix","expected_base_sha"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":120000,"maxOutputBytes":131072,"maxItems":200},"redactionProfile":"documents","requiredScopes":["project:{project}:write"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Control Status","slug":"opencode-delivery-control-status"},"spec":{"canonicalName":"opencode.delivery.control.status","version":"0.2.1","connectorType":"opencode","description":"Read branch, review, pull-request, validation, and merge state from the write-capable controller.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"delivery_id":{"type":"string","pattern":"^delivery_[A-Za-z0-9_-]{8,64}$"}},"required":["delivery_id"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":131072,"maxItems":200},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Jobs List","slug":"opencode-delivery-jobs-list"},"spec":{"canonicalName":"opencode.delivery.jobs.list","version":"0.2.0","connectorType":"opencode-readonly","description":"List recent autonomous deliveries without prompts or provider session identifiers.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"limit":{"type":"integer","minimum":1,"maximum":50}}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":5000,"maxOutputBytes":131072,"maxItems":50},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Repositories List","slug":"opencode-delivery-repositories-list"},"spec":{"canonicalName":"opencode.delivery.repositories.list","version":"0.2.0","connectorType":"opencode-readonly","description":"List repositories, models, stages, and merge policy registered with the autonomous delivery controller.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{}},"outputSchema":{"type":"object"},"limits":{"timeoutMs":5000,"maxOutputBytes":131072,"maxItems":50},"redactionProfile":"metadata","requiredScopes":["project:{project}:read"]}}
@@ -0,0 +1 @@
{"apiVersion":"hub.example.com/v1alpha1","kind":"ToolManifest","metadata":{"name":"OpenCode Delivery Result","slug":"opencode-delivery-result"},"spec":{"canonicalName":"opencode.delivery.result","version":"0.3.0","connectorType":"opencode-readonly","description":"Return bounded changed paths, independent review, validation and PR evidence for external Codex final review.","riskClass":"R1","readOnly":true,"idempotent":true,"inputSchema":{"type":"object","additionalProperties":false,"properties":{"delivery_id":{"type":"string","pattern":"^delivery_[A-Za-z0-9_-]{8,64}$"}},"required":["delivery_id"]},"outputSchema":{"type":"object"},"limits":{"timeoutMs":30000,"maxOutputBytes":262144,"maxItems":500},"redactionProfile":"documents","requiredScopes":["project:{project}:read"]}}
Loaded 100 of 663 files, more files were not shown because too many files have changed in this diff. Show more