github-agent 2.4.6__py3-none-any.whl → 2.4.7__py3-none-any.whl

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/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "2.4.6"
1
+ __version__ = "2.4.7"
@@ -39,7 +39,7 @@ from github_agent.auth import (
39
39
  )
40
40
  from github_agent.github_response_models import PagesAlreadyEnabled, PagesNotEnabled
41
41
 
42
- __version__ = "2.4.6"
42
+ __version__ = "2.4.7"
43
43
  logger = get_logger("GithubMCPServer")
44
44
  logger.setLevel(logging.INFO)
45
45
 
@@ -0,0 +1,24 @@
1
+ {
2
+ "connector": "github-mcp",
3
+ "sources": [
4
+ {
5
+ "source_id": "issues",
6
+ "record_type": "Issue",
7
+ "tools": [
8
+ "github_search_issues"
9
+ ],
10
+ "records_path": "data.items",
11
+ "id_field": "id",
12
+ "title_field": "title",
13
+ "text_field": "body",
14
+ "cursor_field": "updated_at",
15
+ "incremental": false,
16
+ "arguments": {
17
+ "q": "is:issue is:open involves:@me",
18
+ "per_page": 50,
19
+ "max_pages": 1
20
+ },
21
+ "description": "Open GitHub issues involving the authenticated user (first 50)."
22
+ }
23
+ ]
24
+ }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: github-agent
3
- Version: 2.4.6
3
+ Version: 2.4.7
4
4
  Summary: GitHub Agent for MCP
5
5
  Author-email: Project Maintainers <maintainers@users.noreply.github.com>
6
6
  License: MIT
@@ -44,7 +44,7 @@ Dynamic: license-file
44
44
  ![PyPI - Wheel](https://img.shields.io/pypi/wheel/github-agent)
45
45
  ![PyPI - Implementation](https://img.shields.io/pypi/implementation/github-agent)
46
46
 
47
- *Version: 2.4.6*
47
+ *Version: 2.4.7*
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/).
@@ -1,4 +1,4 @@
1
- github_agent/__init__.py,sha256=jbv3GfuSUTWNtlhuY3Dgm_vD4Uuj9i1AVwV8tthwnik,22
1
+ github_agent/__init__.py,sha256=6Ls7f3ZJxdJNWxciT1KkTqmIR_gddzXVDXxBtiav_WI,22
2
2
  github_agent/__main__.py,sha256=O4Xg__fMvKfUsA6m61pLV56jlYY6EORiLhgDLlp0vJ8,92
3
3
  github_agent/api_client.py,sha256=O69YfkXBKyVd59EC8szaMlw3_ZxwEEvsLSvhWlfYnvk,1581
4
4
  github_agent/auth.py,sha256=isNd6DYbl_syB_wIbC399d_-157jqH1jqJfDmBn8h-0,4671
@@ -8,7 +8,7 @@ github_agent/github_input_models.py,sha256=yqqPGHb206th736MZvbnxq9F1JRsBUBODNeNV
8
8
  github_agent/github_response_models.py,sha256=mllSt0frBgzklUtfuHywJ2Ald3m99So948Xikt3H2Tc,8859
9
9
  github_agent/kg_ingest.py,sha256=iH_NKpd8a6GtNxfZTp8Oah8VZkcXjI74KDf8P9NbtjA,17978
10
10
  github_agent/mcp_config.json,sha256=2OOXrwO1sDLyHQqpZwhvDHizPIe3by6YmK4KFE333gI,23
11
- github_agent/mcp_server.py,sha256=pG0hdoXFshlO0my4VxfQiJf0j-ZY098UJX515L5x09k,126620
11
+ github_agent/mcp_server.py,sha256=6Pd--MgYMT6g8nvzOpcXNToNHZr0SPdY6dfeCydkmf0,126620
12
12
  github_agent/api/__init__.py,sha256=ntaEPqk-dsAV3HyyDLc2hYpc9nTTyG5CKI-SVDDjc24,27
13
13
  github_agent/api/api_client_base.py,sha256=tMXKrZIXg6aQ6OK4kNKBDcNc8BrM0Vml_66SwA5ZgEw,7485
14
14
  github_agent/api/api_client_branches.py,sha256=bCmqGUWQ27GFTGxcFkQ7D-ZEltKp6APVsk_Fw9wzdjY,3940
@@ -43,6 +43,7 @@ github_agent/mcp/mcp_search.py,sha256=3ZBGNKkVu5oBXgN9MBWd-ve4NDCzcwP9sY22bp4hqK
43
43
  github_agent/ontology/__init__.py,sha256=-qc7ZPSgdaCLrD1AH_7TFXWikEpSH9rVmBciCC9gtCY,552
44
44
  github_agent/ontology/certification.json,sha256=nUT_C-AtTjtb4bDAs3cDT2vlk7kK_8RPFfbyIWXCMw0,1664
45
45
  github_agent/ontology/github.ttl,sha256=U2jeFMGCqhsyu9G4AzTXaw1xmSWrqLlbSXTWduWxccw,9260
46
+ github_agent/ontology/ingest_sources.json,sha256=70glHq2q8MEQCxD22r2VPyz_7mubibf1iygCf-sSdMs,572
46
47
  github_agent/ontology/fixtures/records.json,sha256=EvW1Swrph3DyefmeE2eI0GM0AEKp1v9LrAwiqIbS3Hs,543
47
48
  github_agent/ontology/mappings/source.yaml,sha256=f_ejdVD4JaYf5tD5UpIG9O_icnQx4yuKuVo5oyvc7UM,533
48
49
  github_agent/ontology/migrations/manifest.json,sha256=rfFgIlAt0DHdMDpSq656Bnfs4RNeHgXCHbokya5Rk1w,118
@@ -92,7 +93,7 @@ github_agent/skills/github-triage-resolver/WORKFLOW.md,sha256=orvcRmaV-qb_JKoGSw
92
93
  github_agent/skills/github-triage-resolver/references/resolution-rules.md,sha256=lGPvfLCSHpNIeh2rKWcH2k_2lla3ovgBxzwvtMmyQ-0,4133
93
94
  github_agent/skills/github-triage-resolver/scripts/classify_safe.py,sha256=8BhcDF9Q8rjJIEVOmdyO-dO-eHBjW7T-bzaYC16uY5I,9556
94
95
  github_agent/skills/github-triage-resolver/scripts/gh_write.py,sha256=SL5oA1A3lFRLepNri4CzEcuEsg9D5WKJ1000fCRKBEM,4125
95
- github_agent-2.4.6.dist-info/licenses/LICENSE,sha256=5ALbh4fIALWVsUhO7q1nFT1bQb-CL9sWKf7p3GgLEG8,1070
96
+ github_agent-2.4.7.dist-info/licenses/LICENSE,sha256=5ALbh4fIALWVsUhO7q1nFT1bQb-CL9sWKf7p3GgLEG8,1070
96
97
  scripts/security_sanitizer.py,sha256=gE65xtYMGx43oYUnK0kozBm73Hx97mCdrQUM7GGzIbk,9449
97
98
  scripts/verify_api_integration.py,sha256=3AK8HKW52o1yxCDaEUtXngnh7CjYw6NiG9Eb3EIoXNE,10256
98
99
  tests/conftest.py,sha256=kgpOLUp_q8IZaI6Xd7F1tbFuio81-_l5Gd4jaGiMrnY,3636
@@ -108,6 +109,7 @@ tests/test_github_agent_brute_force_coverage.py,sha256=Z_voXtChOYRqaNEmNzMfzvwQM
108
109
  tests/test_github_gql.py,sha256=M55X5V2orZ1kVek16s1zaMJIUb6FhlfbC8k0cKkD07Y,2709
109
110
  tests/test_github_http.py,sha256=uuSMrot71Kj8WQf-QyazO4rWzpWSucRTQ1tt5wRvC_E,9563
110
111
  tests/test_hardening.py,sha256=sdlKmtk7B5yncc-r1LuFgoJfro6wNlCqY0xI73IVC4M,3710
112
+ tests/test_ingest_sources.py,sha256=hzY7vDW5Q1P-Qc_X6PAFAnXik_0BIP1DrNLVPhe_9DQ,1391
111
113
  tests/test_init_dynamics.py,sha256=fPE_4M-bONKiqvtWLn12A0q18CUlzQhdx1UoXYkbbPk,1839
112
114
  tests/test_kg_ingest.py,sha256=TeHjWz74LiuSxpI7N6HHrdj0H1mRsJHceQDNYvre4To,9462
113
115
  tests/test_mcp_coverage.py,sha256=W_7fbCWoFd4mDwKvah2DmQRcy0fD7tI4ykFTne69tNM,43550
@@ -125,8 +127,8 @@ tests/test_skill_org_remediation_classify_fix_risk.py,sha256=0Y8289lhxtJ3pxYUHzO
125
127
  tests/test_skill_pr_review_sweep_summarize_prs.py,sha256=NrNaucQvM7K-k1WBcOBKtTGjxJbW16VgTHbC7dSsjm4,3821
126
128
  tests/test_skill_triage_resolver_classify_safe.py,sha256=B-aDeVmsKTsxYO8TwMEx-cmpVSmZdlKXw5993Da2ubc,9489
127
129
  tests/test_startup.py,sha256=Ix_g69k0tsZbY0-Vkeh8ADWojUdbYwTwwmnM4_hVuCc,1245
128
- github_agent-2.4.6.dist-info/METADATA,sha256=BOOnSktEQdzcve5WQ4RhGYGqwGI7tldjOI5F2pg2wUc,34508
129
- github_agent-2.4.6.dist-info/WHEEL,sha256=mOdXR9C3wMVov7cSY8PY-XCzo3SmmWCHvGQr5csJoao,91
130
- github_agent-2.4.6.dist-info/entry_points.txt,sha256=Wi6GhziOqmJl-22qTYkjfVuIHEHKRrBvyyloc7NqV80,367
131
- github_agent-2.4.6.dist-info/top_level.txt,sha256=53Ecr8n7o_EMIqZClc11PBU07uQIggYZOk5WnvBbeOQ,50
132
- github_agent-2.4.6.dist-info/RECORD,,
130
+ github_agent-2.4.7.dist-info/METADATA,sha256=q_4bTKAdIUsfu9TcD7RDkkKSLb8cnvhoyRryLf-VhmI,34508
131
+ github_agent-2.4.7.dist-info/WHEEL,sha256=mOdXR9C3wMVov7cSY8PY-XCzo3SmmWCHvGQr5csJoao,91
132
+ github_agent-2.4.7.dist-info/entry_points.txt,sha256=Wi6GhziOqmJl-22qTYkjfVuIHEHKRrBvyyloc7NqV80,367
133
+ github_agent-2.4.7.dist-info/top_level.txt,sha256=53Ecr8n7o_EMIqZClc11PBU07uQIggYZOk5WnvBbeOQ,50
134
+ github_agent-2.4.7.dist-info/RECORD,,
@@ -0,0 +1,34 @@
1
+ """The packaged ingestible-source declaration (CONN-GITHUB-AGENT-CONNECTOR-CONTENT-R003)."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from pathlib import Path
6
+
7
+ import pytest
8
+ import yaml
9
+ from agent_connector_sdk.ingest.sources import load_ingest_sources
10
+ from agent_connector_sdk.mcp.method_tools import operation_annotations, operation_verb
11
+ from agent_connector_sdk.mcp.tool_surface import operation_prefix
12
+
13
+ import github_agent
14
+ from github_agent.api_client import Api
15
+
16
+
17
+ @pytest.mark.spec("CONN-GITHUB-AGENT-CONNECTOR-CONTENT-R003")
18
+ def test_declares_ingestible_sources() -> None:
19
+ package_root = Path(github_agent.__file__).parent
20
+ declaration = load_ingest_sources(package_root)
21
+ assert declaration is not None
22
+ assert declaration.connector == "github-mcp"
23
+ source = declaration.source("issues")
24
+ assert source is not None and source.record_type == "Issue"
25
+ prefix = operation_prefix("github-agent")
26
+ assert source.tools == (f"{prefix}_search_issues",)
27
+ # The engine admits a record only under the pack mapping of its type.
28
+ manifest = yaml.safe_load(
29
+ (package_root.parent / "connector_manifest.yml").read_text("utf-8")
30
+ )
31
+ assert source.record_type in manifest["schema_mappings"]
32
+ method = getattr(Api, "search_issues")
33
+ annotations = operation_annotations("search_issues", operation_verb(method))
34
+ assert annotations.read_only_hint is True