github-agent 2.4.8__tar.gz → 2.4.12__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {github_agent-2.4.8 → github_agent-2.4.12}/PKG-INFO +10 -10
- {github_agent-2.4.8 → github_agent-2.4.12}/README.md +7 -7
- github_agent-2.4.12/github_agent/__init__.py +15 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_base.py +5 -5
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_branches.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_comments.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_commits.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_contents.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_dependabot.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_issues.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_orgs.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_pages.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_pulls.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_releases.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_repos.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_search.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/api_client_workflows.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/auth.py +6 -6
- github_agent-2.4.12/github_agent/connector_sources.py +204 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/github_gql.py +4 -4
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/github_http.py +4 -4
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/kg_ingest.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_action.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_branch.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_collaborator.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_commit.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_content.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_dependabot.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_issue.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_org.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_pull.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_release.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_repo.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/mcp_search.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp_server.py +16 -8
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/ontology/__init__.py +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/ontology/github.ttl +5 -8
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-actions-ci-review/SKILL.md +1 -1
- github_agent-2.4.12/github_agent/skills/github-agent-development/SKILL.md +86 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-backlog-planner/SKILL.md +5 -5
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-backlog-planner/scripts/build_plan.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-ci-failure-sweep/SKILL.md +3 -3
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-dependabot-review/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-issue-tracking/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-org-remediation-loop/SKILL.md +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pr-review-sweep/SKILL.md +2 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-project-provisioner/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pull-request-create/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pull-request-review/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-repository-management/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-tools/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-triage-resolver/SKILL.md +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent.egg-info/PKG-INFO +10 -10
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent.egg-info/SOURCES.txt +2 -7
- github_agent-2.4.12/github_agent.egg-info/entry_points.txt +5 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent.egg-info/requires.txt +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent.egg-info/top_level.txt +0 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/pyproject.toml +7 -16
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/conftest.py +9 -12
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_action_discovery.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_api_client_endpoints.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_api_validation.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_auth_client_edge_cases.py +3 -3
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_cq_paths.py +3 -6
- github_agent-2.4.12/tests/test_default_content_surfaces.py +69 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_fleet_name.py +5 -16
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_github_agent_brute_force_coverage.py +4 -4
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_github_gql.py +10 -6
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_github_http.py +49 -16
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_ingest_sources.py +6 -14
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_init_dynamics.py +1 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_kg_ingest.py +5 -6
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_mcp_coverage.py +11 -3
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_mcp_package_dispatch.py +91 -31
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_model_fields.py +7 -8
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_ontology_parent_link.py +0 -2
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_org_crud.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_pages.py +1 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_skill_github_tools_fetch_comments.py +10 -3
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_skill_github_tools_inspect_pr_checks.py +13 -5
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_skill_org_remediation_classify_fix_risk.py +3 -1
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_skill_triage_resolver_classify_safe.py +10 -3
- github_agent-2.4.8/github_agent/__init__.py +0 -1
- github_agent-2.4.8/github_agent/connectors/mcp_source_presets.json +0 -17
- github_agent-2.4.8/github_agent/connectors/tool_schema_fingerprints.json +0 -8
- github_agent-2.4.8/github_agent/ontology/certification.json +0 -36
- github_agent-2.4.8/github_agent/ontology/ingest_sources.json +0 -24
- github_agent-2.4.8/github_agent/ontology/shapes/connector.shacl.ttl +0 -224
- github_agent-2.4.8/github_agent.egg-info/entry_points.txt +0 -14
- github_agent-2.4.8/scripts/security_sanitizer.py +0 -318
- github_agent-2.4.8/scripts/verify_api_integration.py +0 -320
- github_agent-2.4.8/tests/test_default_content_surfaces.py +0 -43
- {github_agent-2.4.8 → github_agent-2.4.12}/LICENSE +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/__main__.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api/__init__.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/api_client.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/connectors/__init__.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/github_input_models.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/github_response_models.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp/__init__.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/mcp_config.json +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/ontology/fixtures/records.json +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/ontology/mappings/source.yaml +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/ontology/migrations/manifest.json +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/prompts/__init__.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/__init__.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-actions-ci-review/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-agent-operations/SKILL.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-agent-operations/agents/openai.yaml +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-agent-operations/references/catalog.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-backlog-planner/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-backlog-planner/references/addressed-heuristics.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-ci-failure-sweep/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-ci-failure-sweep/references/actions-tool-cheatsheet.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-ci-failure-sweep/scripts/summarize_runs.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-dependabot-review/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-issue-tracking/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-org-remediation-loop/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-org-remediation-loop/scripts/classify_fix_risk.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pr-review-sweep/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pr-review-sweep/references/pulls-tool-cheatsheet.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pr-review-sweep/scripts/summarize_prs.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-project-provisioner/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-project-provisioner/scripts/enable_pages.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pull-request-create/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-pull-request-review/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-repository-management/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-tools/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-tools/code-reviewer.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-tools/scripts/fetch_comments.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-tools/scripts/inspect_pr_checks.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-triage-resolver/WORKFLOW.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-triage-resolver/references/resolution-rules.md +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-triage-resolver/scripts/classify_safe.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent/skills/github-triage-resolver/scripts/gh_write.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/github_agent.egg-info/dependency_links.txt +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/setup.cfg +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_comment_crud.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_github_agent_api_brute_force_coverage.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_hardening.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_repo_secrets_characterization.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_skill_backlog_build_plan.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_skill_ci_failure_sweep_summarize_runs.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_skill_pr_review_sweep_summarize_prs.py +0 -0
- {github_agent-2.4.8 → github_agent-2.4.12}/tests/test_startup.py +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: github-agent
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.12
|
|
4
4
|
Summary: GitHub Agent for MCP
|
|
5
|
-
Author-email:
|
|
5
|
+
Author-email: Repository Maintainers <maintainers@knuckles.team>
|
|
6
6
|
License: MIT
|
|
7
7
|
Classifier: Development Status :: 5 - Production/Stable
|
|
8
8
|
Classifier: License :: Public Domain
|
|
@@ -13,7 +13,7 @@ Requires-Python: >=3.12
|
|
|
13
13
|
Description-Content-Type: text/markdown
|
|
14
14
|
License-File: LICENSE
|
|
15
15
|
Requires-Dist: requests>=2.34.2
|
|
16
|
-
Requires-Dist:
|
|
16
|
+
Requires-Dist: scion-sdk[graphql,mcp]<0.7.0,>=0.6.4
|
|
17
17
|
Provides-Extra: mcp
|
|
18
18
|
Provides-Extra: all
|
|
19
19
|
Provides-Extra: test
|
|
@@ -44,7 +44,7 @@ Dynamic: license-file
|
|
|
44
44
|

|
|
45
45
|

|
|
46
46
|
|
|
47
|
-
*Version: 2.4.
|
|
47
|
+
*Version: 2.4.9*
|
|
48
48
|
|
|
49
49
|
> **Documentation** — Installation, deployment, and usage across the MCP, API, and
|
|
50
50
|
> [official documentation](https://knuckles-team.github.io/github-agent/).
|
|
@@ -242,7 +242,7 @@ When query strings or parameters are supplied, an LLM-free **Knowledge Graph res
|
|
|
242
242
|
<!-- MCP-CONFIG-EXAMPLES:START -->
|
|
243
243
|
|
|
244
244
|
> **Install the connector-focused `[mcp]` extra.** Examples use `github-agent[mcp]` to add
|
|
245
|
-
> FastMCP / FastAPI through `
|
|
245
|
+
> FastMCP / FastAPI through `scion-sdk`; the required Scion SDK core
|
|
246
246
|
> still carries `epistemic-graph[full]`. The `[agent-runtime]` extra additionally
|
|
247
247
|
> enables model orchestration.
|
|
248
248
|
|
|
@@ -454,7 +454,7 @@ the detailed transport contract.
|
|
|
454
454
|
| `REPOTOOL` | `True` | |
|
|
455
455
|
| `SEARCHTOOL` | `True` | |
|
|
456
456
|
|
|
457
|
-
#### Inherited
|
|
457
|
+
#### Inherited scion-sdk variables (apply to every connector)
|
|
458
458
|
|
|
459
459
|
| Variable | Example | Description |
|
|
460
460
|
|----------|---------|-------------|
|
|
@@ -473,7 +473,7 @@ the detailed transport contract.
|
|
|
473
473
|
| `MODEL_ID` | `gpt-4o` | Model id for the agent |
|
|
474
474
|
| `ENABLE_WEB_UI` | `True` | Serve the AG-UI web interface |
|
|
475
475
|
|
|
476
|
-
_36 package + 14 inherited variable(s). Auto-generated from `.env.example` + the shared
|
|
476
|
+
_36 package + 14 inherited variable(s). Auto-generated from `.env.example` + the shared scion-sdk set — do not edit._
|
|
477
477
|
<!-- ENV-VARS-TABLE:END -->
|
|
478
478
|
|
|
479
479
|
|
|
@@ -628,7 +628,7 @@ Detailed graph node architecture explanations, custom skill configurations, and
|
|
|
628
628
|
|
|
629
629
|
## Security & Governance
|
|
630
630
|
|
|
631
|
-
Built directly upon the enterprise-ready [`
|
|
631
|
+
Built directly upon the enterprise-ready [`scion-sdk`](https://github.com/Knuckles-Team/scion-sdk) core, standard security parameters are fully supported:
|
|
632
632
|
|
|
633
633
|
### Access Control & Policy Enforcement
|
|
634
634
|
- **Eunomia Policies:** Fine-grained, policy-driven tool authorization. Supports `none`, local `embedded` (`mcp_policies.json`), or centralized `remote` modes.
|
|
@@ -650,7 +650,7 @@ Pick the extra that matches what the operator want to run:
|
|
|
650
650
|
|
|
651
651
|
| Extra | Installs | Use when |
|
|
652
652
|
|-------|----------|----------|
|
|
653
|
-
| `github-agent[mcp]` | Connector-focused MCP server (`
|
|
653
|
+
| `github-agent[mcp]` | Connector-focused MCP server (`scion-sdk` — FastMCP/FastAPI + `epistemic-graph[full]`) | The operator only run the **MCP server** (smallest install / image) |
|
|
654
654
|
| `github-agent[all]` | Everything (`mcp` + `agent` + `logfire`) | Development / both surfaces |
|
|
655
655
|
|
|
656
656
|
```bash
|
|
@@ -677,7 +677,7 @@ agent (`immutable agent digest`) with a co-located `:mcp` sidecar.
|
|
|
677
677
|
|
|
678
678
|
### Knowledge-graph database (`epistemic-graph`)
|
|
679
679
|
|
|
680
|
-
|
|
680
|
+
Scion SDK core dependency (`epistemic-graph[full]`). The `[mcp]` extra keeps
|
|
681
681
|
deployments can use the bundled engine. For production or shared state, run
|
|
682
682
|
**epistemic-graph as a dedicated database service** and configure the runtime to use it.
|
|
683
683
|
Deployment recipes (single-node + Raft HA), connection configuration, and architecture
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|

|
|
21
21
|

|
|
22
22
|
|
|
23
|
-
*Version: 2.4.
|
|
23
|
+
*Version: 2.4.9*
|
|
24
24
|
|
|
25
25
|
> **Documentation** — Installation, deployment, and usage across the MCP, API, and
|
|
26
26
|
> [official documentation](https://knuckles-team.github.io/github-agent/).
|
|
@@ -218,7 +218,7 @@ When query strings or parameters are supplied, an LLM-free **Knowledge Graph res
|
|
|
218
218
|
<!-- MCP-CONFIG-EXAMPLES:START -->
|
|
219
219
|
|
|
220
220
|
> **Install the connector-focused `[mcp]` extra.** Examples use `github-agent[mcp]` to add
|
|
221
|
-
> FastMCP / FastAPI through `
|
|
221
|
+
> FastMCP / FastAPI through `scion-sdk`; the required Scion SDK core
|
|
222
222
|
> still carries `epistemic-graph[full]`. The `[agent-runtime]` extra additionally
|
|
223
223
|
> enables model orchestration.
|
|
224
224
|
|
|
@@ -430,7 +430,7 @@ the detailed transport contract.
|
|
|
430
430
|
| `REPOTOOL` | `True` | |
|
|
431
431
|
| `SEARCHTOOL` | `True` | |
|
|
432
432
|
|
|
433
|
-
#### Inherited
|
|
433
|
+
#### Inherited scion-sdk variables (apply to every connector)
|
|
434
434
|
|
|
435
435
|
| Variable | Example | Description |
|
|
436
436
|
|----------|---------|-------------|
|
|
@@ -449,7 +449,7 @@ the detailed transport contract.
|
|
|
449
449
|
| `MODEL_ID` | `gpt-4o` | Model id for the agent |
|
|
450
450
|
| `ENABLE_WEB_UI` | `True` | Serve the AG-UI web interface |
|
|
451
451
|
|
|
452
|
-
_36 package + 14 inherited variable(s). Auto-generated from `.env.example` + the shared
|
|
452
|
+
_36 package + 14 inherited variable(s). Auto-generated from `.env.example` + the shared scion-sdk set — do not edit._
|
|
453
453
|
<!-- ENV-VARS-TABLE:END -->
|
|
454
454
|
|
|
455
455
|
|
|
@@ -604,7 +604,7 @@ Detailed graph node architecture explanations, custom skill configurations, and
|
|
|
604
604
|
|
|
605
605
|
## Security & Governance
|
|
606
606
|
|
|
607
|
-
Built directly upon the enterprise-ready [`
|
|
607
|
+
Built directly upon the enterprise-ready [`scion-sdk`](https://github.com/Knuckles-Team/scion-sdk) core, standard security parameters are fully supported:
|
|
608
608
|
|
|
609
609
|
### Access Control & Policy Enforcement
|
|
610
610
|
- **Eunomia Policies:** Fine-grained, policy-driven tool authorization. Supports `none`, local `embedded` (`mcp_policies.json`), or centralized `remote` modes.
|
|
@@ -626,7 +626,7 @@ Pick the extra that matches what the operator want to run:
|
|
|
626
626
|
|
|
627
627
|
| Extra | Installs | Use when |
|
|
628
628
|
|-------|----------|----------|
|
|
629
|
-
| `github-agent[mcp]` | Connector-focused MCP server (`
|
|
629
|
+
| `github-agent[mcp]` | Connector-focused MCP server (`scion-sdk` — FastMCP/FastAPI + `epistemic-graph[full]`) | The operator only run the **MCP server** (smallest install / image) |
|
|
630
630
|
| `github-agent[all]` | Everything (`mcp` + `agent` + `logfire`) | Development / both surfaces |
|
|
631
631
|
|
|
632
632
|
```bash
|
|
@@ -653,7 +653,7 @@ agent (`immutable agent digest`) with a co-located `:mcp` sidecar.
|
|
|
653
653
|
|
|
654
654
|
### Knowledge-graph database (`epistemic-graph`)
|
|
655
655
|
|
|
656
|
-
|
|
656
|
+
Scion SDK core dependency (`epistemic-graph[full]`). The `[mcp]` extra keeps
|
|
657
657
|
deployments can use the bundled engine. For production or shared state, run
|
|
658
658
|
**epistemic-graph as a dedicated database service** and configure the runtime to use it.
|
|
659
659
|
Deployment recipes (single-node + Raft HA), connection configuration, and architecture
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from scion_sdk.connector import Connector
|
|
2
|
+
from scion_sdk.connector_identity import connector_version
|
|
3
|
+
|
|
4
|
+
from github_agent.api_client import Api
|
|
5
|
+
from github_agent.auth import get_client
|
|
6
|
+
from github_agent.mcp_server import TOOL_REGISTRY
|
|
7
|
+
|
|
8
|
+
__version__ = connector_version("github_agent")
|
|
9
|
+
|
|
10
|
+
connector = Connector(
|
|
11
|
+
api=Api,
|
|
12
|
+
get_client=get_client,
|
|
13
|
+
tool_registry=TOOL_REGISTRY,
|
|
14
|
+
instructions="Github MCP Server - Manage your repositories, issues, and pull requests.",
|
|
15
|
+
)
|
|
@@ -7,15 +7,15 @@ from concurrent.futures import ThreadPoolExecutor, as_completed
|
|
|
7
7
|
from typing import TypeVar
|
|
8
8
|
|
|
9
9
|
import requests
|
|
10
|
-
from
|
|
10
|
+
from pydantic import BaseModel
|
|
11
|
+
from scion_sdk.exceptions import (
|
|
11
12
|
AuthError,
|
|
12
13
|
MissingParameterError,
|
|
13
14
|
UnauthorizedError,
|
|
14
15
|
)
|
|
15
|
-
from
|
|
16
|
-
from
|
|
17
|
-
from
|
|
18
|
-
from pydantic import BaseModel
|
|
16
|
+
from scion_sdk.tls.profile import ResolvedTLSProfile
|
|
17
|
+
from scion_sdk.tls.resolve import resolve_tls_profile
|
|
18
|
+
from scion_sdk.utilities import get_logger
|
|
19
19
|
|
|
20
20
|
logger = get_logger(__name__)
|
|
21
21
|
T = TypeVar("T", bound=BaseModel)
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
|
-
from
|
|
2
|
+
from pydantic import ValidationError
|
|
3
|
+
from scion_sdk.exceptions import (
|
|
3
4
|
ParameterError,
|
|
4
5
|
require_auth,
|
|
5
6
|
)
|
|
6
|
-
from pydantic import ValidationError
|
|
7
7
|
|
|
8
8
|
from github_agent.api.api_client_base import BaseApiClient
|
|
9
9
|
from github_agent.github_input_models import (
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
|
-
from
|
|
2
|
+
from pydantic import ValidationError
|
|
3
|
+
from scion_sdk.exceptions import (
|
|
3
4
|
ParameterError,
|
|
4
5
|
require_auth,
|
|
5
6
|
)
|
|
6
|
-
from pydantic import ValidationError
|
|
7
7
|
|
|
8
8
|
from github_agent.api.api_client_base import BaseApiClient
|
|
9
9
|
from github_agent.github_input_models import (
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
|
-
from
|
|
2
|
+
from pydantic import ValidationError
|
|
3
|
+
from scion_sdk.exceptions import (
|
|
3
4
|
ParameterError,
|
|
4
5
|
require_auth,
|
|
5
6
|
)
|
|
6
|
-
from pydantic import ValidationError
|
|
7
7
|
|
|
8
8
|
from github_agent.api.api_client_base import BaseApiClient
|
|
9
9
|
from github_agent.github_input_models import (
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
from typing import Any
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from scion_sdk.exceptions import require_auth
|
|
5
5
|
|
|
6
6
|
from github_agent.api.api_client_base import BaseApiClient
|
|
7
7
|
from github_agent.github_response_models import Response
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
|
-
from
|
|
2
|
+
from pydantic import ValidationError
|
|
3
|
+
from scion_sdk.exceptions import (
|
|
3
4
|
MissingParameterError,
|
|
4
5
|
ParameterError,
|
|
5
6
|
require_auth,
|
|
6
7
|
)
|
|
7
|
-
from pydantic import ValidationError
|
|
8
8
|
|
|
9
9
|
from github_agent.api.api_client_base import BaseApiClient
|
|
10
10
|
from github_agent.github_input_models import (
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
from urllib.parse import urlparse
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from pydantic import ValidationError
|
|
5
|
+
from scion_sdk.exceptions import (
|
|
5
6
|
ParameterError,
|
|
6
7
|
require_auth,
|
|
7
8
|
)
|
|
8
|
-
from pydantic import ValidationError
|
|
9
9
|
|
|
10
10
|
from github_agent.api.api_client_base import BaseApiClient
|
|
11
11
|
from github_agent.github_input_models import (
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
import requests
|
|
3
|
-
from
|
|
3
|
+
from pydantic import ValidationError
|
|
4
|
+
from scion_sdk.exceptions import (
|
|
4
5
|
ParameterError,
|
|
5
6
|
require_auth,
|
|
6
7
|
)
|
|
7
|
-
from pydantic import ValidationError
|
|
8
8
|
|
|
9
9
|
from github_agent.api.api_client_base import BaseApiClient
|
|
10
10
|
from github_agent.github_input_models import (
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
|
-
from
|
|
2
|
+
from pydantic import ValidationError
|
|
3
|
+
from scion_sdk.exceptions import (
|
|
3
4
|
MissingParameterError,
|
|
4
5
|
ParameterError,
|
|
5
6
|
require_auth,
|
|
6
7
|
)
|
|
7
|
-
from pydantic import ValidationError
|
|
8
8
|
|
|
9
9
|
from github_agent.api.api_client_base import BaseApiClient
|
|
10
10
|
from github_agent.github_input_models import (
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
|
-
from
|
|
2
|
+
from pydantic import ValidationError
|
|
3
|
+
from scion_sdk.exceptions import (
|
|
3
4
|
ParameterError,
|
|
4
5
|
require_auth,
|
|
5
6
|
)
|
|
6
|
-
from pydantic import ValidationError
|
|
7
7
|
|
|
8
8
|
from github_agent.api.api_client_base import BaseApiClient
|
|
9
9
|
from github_agent.github_response_models import (
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
import requests
|
|
3
|
-
from
|
|
3
|
+
from pydantic import ValidationError
|
|
4
|
+
from scion_sdk.exceptions import (
|
|
4
5
|
ParameterError,
|
|
5
6
|
require_auth,
|
|
6
7
|
)
|
|
7
|
-
from pydantic import ValidationError
|
|
8
8
|
|
|
9
9
|
from github_agent.api.api_client_base import BaseApiClient
|
|
10
10
|
from github_agent.github_input_models import (
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
|
-
from
|
|
2
|
+
from pydantic import ValidationError
|
|
3
|
+
from scion_sdk.exceptions import (
|
|
3
4
|
ParameterError,
|
|
4
5
|
require_auth,
|
|
5
6
|
)
|
|
6
|
-
from pydantic import ValidationError
|
|
7
7
|
|
|
8
8
|
from github_agent.api.api_client_base import BaseApiClient
|
|
9
9
|
from github_agent.github_input_models import (
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
from typing import Any
|
|
3
3
|
|
|
4
|
-
from
|
|
4
|
+
from pydantic import ValidationError
|
|
5
|
+
from scion_sdk.exceptions import (
|
|
5
6
|
ParameterError,
|
|
6
7
|
require_auth,
|
|
7
8
|
)
|
|
8
|
-
from pydantic import ValidationError
|
|
9
9
|
|
|
10
10
|
from github_agent.api.api_client_base import BaseApiClient
|
|
11
11
|
from github_agent.github_input_models import (
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/python
|
|
2
2
|
|
|
3
3
|
import httpx
|
|
4
|
-
from
|
|
4
|
+
from scion_sdk.auth.delegation import (
|
|
5
5
|
DelegationSettings,
|
|
6
6
|
current_user_token,
|
|
7
7
|
exchange_token,
|
|
8
8
|
)
|
|
9
|
-
from
|
|
10
|
-
from
|
|
9
|
+
from scion_sdk.config import setting
|
|
10
|
+
from scion_sdk.exceptions import (
|
|
11
11
|
AuthError,
|
|
12
12
|
LoginRequiredError,
|
|
13
13
|
UnauthorizedError,
|
|
14
14
|
)
|
|
15
|
-
from
|
|
16
|
-
from
|
|
17
|
-
from
|
|
15
|
+
from scion_sdk.tls.profile import ResolvedTLSProfile
|
|
16
|
+
from scion_sdk.tls.resolve import resolve_tls_profile
|
|
17
|
+
from scion_sdk.utilities import get_logger
|
|
18
18
|
|
|
19
19
|
from github_agent.api_client import Api
|
|
20
20
|
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
"""Data sources of this connector, declared by tool name (generated by connector-ontology-map migrate).
|
|
2
|
+
|
|
3
|
+
Served live as ``connector://resources``. Regenerate by editing the declarations, not the tools.
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
# ruff: noqa: E501
|
|
7
|
+
from __future__ import annotations
|
|
8
|
+
|
|
9
|
+
from scion_sdk.ingest.live_declaration import source_meta
|
|
10
|
+
|
|
11
|
+
CONNECTOR = "github-mcp"
|
|
12
|
+
|
|
13
|
+
SOURCES = (
|
|
14
|
+
source_meta(
|
|
15
|
+
tool="github_get_repositories",
|
|
16
|
+
source_id="github-repositories",
|
|
17
|
+
record_type="repository",
|
|
18
|
+
id_field="id",
|
|
19
|
+
cursor_field="updated_at",
|
|
20
|
+
page_param="page",
|
|
21
|
+
page_size_param="per_page",
|
|
22
|
+
pagination="page",
|
|
23
|
+
preset={
|
|
24
|
+
"doc_type": "repository",
|
|
25
|
+
"page_kind": "page",
|
|
26
|
+
},
|
|
27
|
+
records_path="data",
|
|
28
|
+
server="github-mcp",
|
|
29
|
+
text_field="description",
|
|
30
|
+
title_field="full_name",
|
|
31
|
+
),
|
|
32
|
+
source_meta(
|
|
33
|
+
tool="github_search_issues",
|
|
34
|
+
source_id="issues",
|
|
35
|
+
record_type="Issue",
|
|
36
|
+
id_field="id",
|
|
37
|
+
arguments={
|
|
38
|
+
"max_pages": 1,
|
|
39
|
+
"per_page": 50,
|
|
40
|
+
"q": "is:issue is:open involves:@me",
|
|
41
|
+
},
|
|
42
|
+
cursor_field="updated_at",
|
|
43
|
+
description="Open GitHub issues involving the authenticated user (first 50).",
|
|
44
|
+
records_path="data.items",
|
|
45
|
+
text_field="body",
|
|
46
|
+
title_field="title",
|
|
47
|
+
),
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
SCHEMA_MAPPINGS = {
|
|
51
|
+
"CheckRun": {
|
|
52
|
+
"fields": {
|
|
53
|
+
"completedAt": "xsd:dateTime",
|
|
54
|
+
"conclusion": "xsd:string",
|
|
55
|
+
"defaultBranch": "xsd:string",
|
|
56
|
+
"durationSeconds": "xsd:integer",
|
|
57
|
+
"event": "xsd:string",
|
|
58
|
+
"fullName": "xsd:string",
|
|
59
|
+
"headBranch": "xsd:string",
|
|
60
|
+
"headSha": "xsd:string",
|
|
61
|
+
"htmlUrl": "xsd:string",
|
|
62
|
+
"isDraft": "xsd:boolean",
|
|
63
|
+
"isPrivate": "xsd:boolean",
|
|
64
|
+
"number": "xsd:integer",
|
|
65
|
+
"runStartedAt": "xsd:dateTime",
|
|
66
|
+
"runStatus": "xsd:string",
|
|
67
|
+
"runUpdatedAt": "xsd:dateTime",
|
|
68
|
+
"sha": "xsd:string",
|
|
69
|
+
"startedAt": "xsd:dateTime",
|
|
70
|
+
"state": "xsd:string",
|
|
71
|
+
"status": "xsd:string",
|
|
72
|
+
"tagName": "xsd:string",
|
|
73
|
+
},
|
|
74
|
+
"ontology_class": "PipelineRun",
|
|
75
|
+
},
|
|
76
|
+
"Issue": {
|
|
77
|
+
"fields": {
|
|
78
|
+
"completedAt": "xsd:dateTime",
|
|
79
|
+
"conclusion": "xsd:string",
|
|
80
|
+
"defaultBranch": "xsd:string",
|
|
81
|
+
"durationSeconds": "xsd:integer",
|
|
82
|
+
"event": "xsd:string",
|
|
83
|
+
"fullName": "xsd:string",
|
|
84
|
+
"headBranch": "xsd:string",
|
|
85
|
+
"headSha": "xsd:string",
|
|
86
|
+
"htmlUrl": "xsd:string",
|
|
87
|
+
"isDraft": "xsd:boolean",
|
|
88
|
+
"isPrivate": "xsd:boolean",
|
|
89
|
+
"number": "xsd:integer",
|
|
90
|
+
"runStartedAt": "xsd:dateTime",
|
|
91
|
+
"runStatus": "xsd:string",
|
|
92
|
+
"runUpdatedAt": "xsd:dateTime",
|
|
93
|
+
"sha": "xsd:string",
|
|
94
|
+
"startedAt": "xsd:dateTime",
|
|
95
|
+
"state": "xsd:string",
|
|
96
|
+
"status": "xsd:string",
|
|
97
|
+
"tagName": "xsd:string",
|
|
98
|
+
},
|
|
99
|
+
"ontology_class": "WorkItem",
|
|
100
|
+
},
|
|
101
|
+
"Organization": {
|
|
102
|
+
"fields": {
|
|
103
|
+
"completedAt": "xsd:dateTime",
|
|
104
|
+
"conclusion": "xsd:string",
|
|
105
|
+
"defaultBranch": "xsd:string",
|
|
106
|
+
"durationSeconds": "xsd:integer",
|
|
107
|
+
"event": "xsd:string",
|
|
108
|
+
"fullName": "xsd:string",
|
|
109
|
+
"headBranch": "xsd:string",
|
|
110
|
+
"headSha": "xsd:string",
|
|
111
|
+
"htmlUrl": "xsd:string",
|
|
112
|
+
"isDraft": "xsd:boolean",
|
|
113
|
+
"isPrivate": "xsd:boolean",
|
|
114
|
+
"number": "xsd:integer",
|
|
115
|
+
"runStartedAt": "xsd:dateTime",
|
|
116
|
+
"runStatus": "xsd:string",
|
|
117
|
+
"runUpdatedAt": "xsd:dateTime",
|
|
118
|
+
"sha": "xsd:string",
|
|
119
|
+
"startedAt": "xsd:dateTime",
|
|
120
|
+
"state": "xsd:string",
|
|
121
|
+
"status": "xsd:string",
|
|
122
|
+
"tagName": "xsd:string",
|
|
123
|
+
},
|
|
124
|
+
"ontology_class": "Organization",
|
|
125
|
+
},
|
|
126
|
+
"Workflow": {
|
|
127
|
+
"fields": {
|
|
128
|
+
"completedAt": "xsd:dateTime",
|
|
129
|
+
"conclusion": "xsd:string",
|
|
130
|
+
"defaultBranch": "xsd:string",
|
|
131
|
+
"durationSeconds": "xsd:integer",
|
|
132
|
+
"event": "xsd:string",
|
|
133
|
+
"fullName": "xsd:string",
|
|
134
|
+
"headBranch": "xsd:string",
|
|
135
|
+
"headSha": "xsd:string",
|
|
136
|
+
"htmlUrl": "xsd:string",
|
|
137
|
+
"isDraft": "xsd:boolean",
|
|
138
|
+
"isPrivate": "xsd:boolean",
|
|
139
|
+
"number": "xsd:integer",
|
|
140
|
+
"runStartedAt": "xsd:dateTime",
|
|
141
|
+
"runStatus": "xsd:string",
|
|
142
|
+
"runUpdatedAt": "xsd:dateTime",
|
|
143
|
+
"sha": "xsd:string",
|
|
144
|
+
"startedAt": "xsd:dateTime",
|
|
145
|
+
"state": "xsd:string",
|
|
146
|
+
"status": "xsd:string",
|
|
147
|
+
"tagName": "xsd:string",
|
|
148
|
+
},
|
|
149
|
+
"ontology_class": "Action",
|
|
150
|
+
},
|
|
151
|
+
"WorkflowRun": {
|
|
152
|
+
"fields": {
|
|
153
|
+
"completedAt": "xsd:dateTime",
|
|
154
|
+
"conclusion": "xsd:string",
|
|
155
|
+
"defaultBranch": "xsd:string",
|
|
156
|
+
"durationSeconds": "xsd:integer",
|
|
157
|
+
"event": "xsd:string",
|
|
158
|
+
"fullName": "xsd:string",
|
|
159
|
+
"headBranch": "xsd:string",
|
|
160
|
+
"headSha": "xsd:string",
|
|
161
|
+
"htmlUrl": "xsd:string",
|
|
162
|
+
"isDraft": "xsd:boolean",
|
|
163
|
+
"isPrivate": "xsd:boolean",
|
|
164
|
+
"number": "xsd:integer",
|
|
165
|
+
"runStartedAt": "xsd:dateTime",
|
|
166
|
+
"runStatus": "xsd:string",
|
|
167
|
+
"runUpdatedAt": "xsd:dateTime",
|
|
168
|
+
"sha": "xsd:string",
|
|
169
|
+
"startedAt": "xsd:dateTime",
|
|
170
|
+
"state": "xsd:string",
|
|
171
|
+
"status": "xsd:string",
|
|
172
|
+
"tagName": "xsd:string",
|
|
173
|
+
},
|
|
174
|
+
"ontology_class": "PipelineRun",
|
|
175
|
+
},
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
RESOURCES = (
|
|
179
|
+
{
|
|
180
|
+
"id_prefix": "checkrun",
|
|
181
|
+
"label": "Check Run",
|
|
182
|
+
"name": "CheckRun",
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"id_prefix": "issue",
|
|
186
|
+
"label": "Issue",
|
|
187
|
+
"name": "Issue",
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"id_prefix": "organization",
|
|
191
|
+
"label": "Organization",
|
|
192
|
+
"name": "Organization",
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"id_prefix": "workflow",
|
|
196
|
+
"label": "Workflow",
|
|
197
|
+
"name": "Workflow",
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"id_prefix": "workflowrun",
|
|
201
|
+
"label": "Workflow Run",
|
|
202
|
+
"name": "WorkflowRun",
|
|
203
|
+
},
|
|
204
|
+
)
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
import logging
|
|
5
5
|
from typing import Any
|
|
6
6
|
|
|
7
|
-
from
|
|
8
|
-
from
|
|
9
|
-
from
|
|
10
|
-
from
|
|
7
|
+
from scion_sdk.exceptions import MissingParameterError
|
|
8
|
+
from scion_sdk.tls.profile import ResolvedTLSProfile
|
|
9
|
+
from scion_sdk.tls.resolve import resolve_tls_profile
|
|
10
|
+
from scion_sdk.transports.graphql import GraphQLAuth, GraphQLClient
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
class GraphQL:
|
|
@@ -7,9 +7,9 @@ import json
|
|
|
7
7
|
import ssl
|
|
8
8
|
from typing import Any
|
|
9
9
|
|
|
10
|
-
from
|
|
11
|
-
from
|
|
12
|
-
from
|
|
10
|
+
from scion_sdk.tls.errors import TransportSecurityError
|
|
11
|
+
from scion_sdk.tls.profile import ResolvedTLSProfile
|
|
12
|
+
from scion_sdk.tls.resolve import resolve_tls_profile
|
|
13
13
|
|
|
14
14
|
GITHUB_API_HOST = "api.github.com"
|
|
15
15
|
MAX_REQUEST_BYTES = 1 * 1024 * 1024
|
|
@@ -17,7 +17,7 @@ MAX_RESPONSE_BYTES = 8 * 1024 * 1024
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
def _tls_profile() -> ResolvedTLSProfile:
|
|
20
|
-
"""Resolve the GitHub TLS profile from the SDK (
|
|
20
|
+
"""Resolve the GitHub TLS profile from the SDK (SCION-CONNECTOR-CONTROL-R017)."""
|
|
21
21
|
try:
|
|
22
22
|
return resolve_tls_profile("github")
|
|
23
23
|
except TransportSecurityError:
|
|
@@ -4,7 +4,7 @@ CONCEPT:AU-KG.ingest.enterprise-source-extractor. The github-agent connector nat
|
|
|
4
4
|
pushes its data into the ONE epistemic-graph knowledge graph as **typed OWL nodes**
|
|
5
5
|
(``:Repository``, ``:PullRequest``, ``:Issue``, ``:Release``, ``:Organization``,
|
|
6
6
|
``:Person``, ``:PipelineRun``, ``:CheckRun``) plus links, and release notes as
|
|
7
|
-
**:Document** nodes for semantic search, through the ``
|
|
7
|
+
**:Document** nodes for semantic search, through the ``scion_sdk.ingest``
|
|
8
8
|
facade — the one connector write path; there is no self-contained fallback
|
|
9
9
|
transaction here.
|
|
10
10
|
|
|
@@ -22,7 +22,7 @@ import logging
|
|
|
22
22
|
import time
|
|
23
23
|
from typing import Any
|
|
24
24
|
|
|
25
|
-
from
|
|
25
|
+
from scion_sdk.ingest import (
|
|
26
26
|
ChangeSet,
|
|
27
27
|
Entity,
|
|
28
28
|
IngestBinding,
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
Auto-generated from mcp_server.py during ecosystem standardization.
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
|
-
from agent_connector_sdk.mcp.action_dispatch import resolve_action
|
|
7
|
-
from agent_connector_sdk.mcp.concurrency import run_blocking
|
|
8
6
|
from fastmcp import Context, FastMCP
|
|
9
7
|
from fastmcp.dependencies import Depends
|
|
10
8
|
from pydantic import Field
|
|
9
|
+
from scion_sdk.mcp.action_dispatch import resolve_action
|
|
10
|
+
from scion_sdk.mcp.concurrency import run_blocking
|
|
11
11
|
|
|
12
12
|
from github_agent.auth import get_client
|
|
13
13
|
|