@commandable/integration-data 0.3.1 → 0.3.2

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.
@@ -1,4 +1,16 @@
1
1
  async () => {
2
2
  const res = await integration.fetch('/user/repos')
3
- return await res.json()
3
+ const data = await res.json()
4
+ if (!Array.isArray(data)) return data
5
+ return data.map((r) => ({
6
+ full_name: r.full_name,
7
+ name: r.name,
8
+ owner: { login: r.owner?.login },
9
+ private: r.private,
10
+ default_branch: r.default_branch,
11
+ description: r.description ?? null,
12
+ html_url: r.html_url,
13
+ archived: r.archived,
14
+ fork: r.fork,
15
+ }))
4
16
  }
@@ -30,7 +30,7 @@
30
30
  },
31
31
  "tools": [
32
32
  { "name": "get_me", "description": "Get the authenticated user's profile. Use this to find out who you are authenticated as before performing operations.", "inputSchema": "schemas/empty.json", "handler": "handlers/get_me.js", "scope": "read", "toolset": "repo_admin" },
33
- { "name": "list_repos", "description": "List repositories for the authenticated user.", "inputSchema": "schemas/empty.json", "handler": "handlers/list_repos_user.js", "scope": "read", "toolset": "repo_admin" },
33
+ { "name": "list_repos", "description": "List repositories for the authenticated user. Use get_repo for full metadata.", "inputSchema": "schemas/empty.json", "handler": "handlers/list_repos_user.js", "scope": "read", "toolset": "repo_admin" },
34
34
  { "name": "get_repo", "description": "Get details for a repository (description, default branch, visibility, topics, stats).", "inputSchema": "schemas/get_repo.json", "handler": "handlers/get_repo.js", "scope": "read", "toolset": "code" },
35
35
  { "name": "search_repos", "description": "Search GitHub repositories. Supports stars, forks, language, topic, and user filters (e.g. 'topic:react stars:>1000 language:javascript'). Use this to discover repos.", "inputSchema": "schemas/search_repos.json", "handler": "handlers/search_repos.js", "scope": "read", "toolset": "repo_admin" },
36
36
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commandable/integration-data",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "description": "Integration data (manifests, schemas, handlers, credential configs) for Commandable integrations.",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {
@@ -1,9 +0,0 @@
1
- # Airtable
2
- # Get a token (personal access token): `https://airtable.com/create/tokens`
3
- # - Ensure it has access to the base below with `data.records:read` + `data.records:write`.
4
- AIRTABLE_TOKEN=patf7AMs47t4VXfXx.54919964eace80b86d3d276cd802d76f36986cf98b6b10d4d52632d571925795
5
- # Required for Airtable write tests (the suite creates/updates/deletes records; it does NOT create bases/tables)
6
- # Base/table IDs can be found in the Airtable UI/API docs for your base.
7
- # The table must have a writable text field named `Name`.
8
- AIRTABLE_TEST_WRITE_BASE_ID=appia9Fsf4hSPTOul
9
- AIRTABLE_TEST_WRITE_TABLE_ID=tbldlBE10g1S6aP3v
@@ -1,25 +0,0 @@
1
- # Confluence (Confluence Cloud) live integration tests
2
- #
3
- # Two credential variants are supported — provide one to test that variant:
4
- #
5
- # ----------------------
6
- # Variant: api_token
7
- # ----------------------
8
- # CONFLUENCE_DOMAIN:
9
- # - If your site URL is https://YOUR_DOMAIN.atlassian.net/wiki, then YOUR_DOMAIN is the value.
10
- CONFLUENCE_DOMAIN=commandable
11
- # CONFLUENCE_EMAIL:
12
- # - The email address of the Atlassian account that owns the API token.
13
- CONFLUENCE_EMAIL=theo@commandable.ai
14
- # CONFLUENCE_API_TOKEN:
15
- # - Create an Atlassian API token at: https://id.atlassian.com/manage-profile/security/api-tokens
16
- CONFLUENCE_API_TOKEN=ATATT3xFfGF0q1hqu1FdEJJHaLHdP6aHe2YwVWg2gu4TEBtP0ZWfFh46z7ZQDg0VHIE2PuVLw2MB7tgR-47cjuyVTXGS_UO1-VoKbODopCGCAR_BOWdcdWc5yN4QnIsU_V7LsWqj8hRNn9wEwkxthy3Um5brD26ehgEUeY9cvpjboiIqLcvEA6k=787A1BCE
17
-
18
- #
19
- # ----------------------
20
- # Write test configuration
21
- # ----------------------
22
- # Space key to use for write tests (create/update/delete pages)
23
- CONFLUENCE_TEST_SPACE_KEY=SD
24
- # Optional: parent page ID under which test pages will be created
25
- CONFLUENCE_TEST_PARENT_PAGE_ID=360450
@@ -1,16 +0,0 @@
1
- # GitHub
2
- # Two credential variants are supported -- provide one or both to test each variant:
3
- #
4
- # classic_pat variant: supports ALL tools including create_repo / delete_repo
5
- # Get one at: Settings → Developer settings → Personal access tokens → Tokens (classic)
6
- # Recommended scopes: repo, delete_repo, read:user
7
- _GITHUB_CLASSIC_PAT=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
8
- #
9
- # fine_grained_pat variant: supports most tools, but NOT create_repo / delete_repo
10
- # Get one at: Settings → Developer settings → Personal access tokens → Fine-grained tokens
11
- _GITHUB_FINE_GRAINED_PAT=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
12
- #
13
- # Required for GitHub write tests (create issues/comments/etc.)
14
- # Owner/repo should point at a safe test repo you control.
15
- _GITHUB_TEST_OWNER=commandable
16
- _GITHUB_TEST_REPO=repo-for-integration-tests
@@ -1,46 +0,0 @@
1
- # Jira (Jira Cloud)
2
- # Credentials mode uses an Atlassian API token (easy for local/CI).
3
- #
4
- # ----------------------
5
- # Variant: api_token
6
- # ----------------------
7
- # JIRA_DOMAIN:
8
- # - If your site URL is https://YOUR_DOMAIN.atlassian.net, then YOUR_DOMAIN is the value.
9
- JIRA_DOMAIN=commandable
10
- #
11
- # JIRA_EMAIL:
12
- # - The email address of the Atlassian account that owns the API token.
13
- JIRA_EMAIL=theo@commandable.ai
14
- #
15
- # JIRA_API_TOKEN:
16
- # - Create an Atlassian API token at:
17
- # https://id.atlassian.com/manage-profile/security/api-tokens
18
- JIRA_API_TOKEN=ATATT3xFfGF0q1hqu1FdEJJHaLHdP6aHe2YwVWg2gu4TEBtP0ZWfFh46z7ZQDg0VHIE2PuVLw2MB7tgR-47cjuyVTXGS_UO1-VoKbODopCGCAR_BOWdcdWc5yN4QnIsU_V7LsWqj8hRNn9wEwkxthy3Um5brD26ehgEUeY9cvpjboiIqLcvEA6k=787A1BCE
19
- #
20
- # ----------------------
21
- # Jira write test configuration (required for write suite)
22
- # ----------------------
23
- # These tests create/update/comment/assign (and optionally transition/delete) issues.
24
- # Use a dedicated test project.
25
-
26
- # JIRA_TEST_PROJECT_KEY:
27
- # - The project key visible in the Jira UI, e.g. "PROJ".
28
- # - You can also get it from the URL when viewing a project (the key is usually shown in the URL and in the project header).
29
- JIRA_TEST_PROJECT_KEY=INTTEST
30
- #
31
- # Optional: transition testing
32
- # JIRA_TEST_TRANSITION_NAME:
33
- # - A transition name that exists in your project's workflow (case-insensitive).
34
- # - To find a valid transition name in the UI:
35
- # 1) Open any issue in the test project
36
- # 2) Click the status dropdown (e.g. \"To Do\" / \"In Progress\" / \"Done\")
37
- # 3) Use one of the visible transition actions as the name (e.g. \"Start Progress\", \"Done\")
38
- JIRA_TEST_TRANSITION_NAME="In Progress"
39
- #
40
- # Optional: sprint roundtrip testing (create_sprint -> move_issues_to_sprint -> delete_sprint)
41
- # JIRA_TEST_BOARD_ID:
42
- # - Numeric board ID (a Scrum board recommended).
43
- # - To find it in the UI:
44
- # 1) Open the board in Jira (Board view)
45
- # 2) The URL usually contains `/boards/<id>` — that number is the boardId
46
- JIRA_TEST_BOARD_ID=37
@@ -1,10 +0,0 @@
1
- # Notion
2
- # NOTION_TOKEN is your Notion **Internal Integration Secret**.
3
- # Create it via:
4
- # - `https://www.notion.so/profile/integrations/internal` (Internal Integration), OR
5
- # - Notion UI: Settings & members → Connections → Develop or manage integrations
6
- # Then share your anchor page with the integration.
7
- NOTION_TOKEN=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
8
- # Required for Notion write tests: anchor page id under which tests will create/archive a dedicated database per run
9
- # Parent page ID is the last path segment of the page URL (32-char hex, with or without dashes).
10
- NOTION_TEST_PARENT_PAGE_ID=315c13426a2080728c80c8155dddbbcb
@@ -1,6 +0,0 @@
1
- # Trello (credentials mode uses key+token as query params; tests create/close/delete a board per run)
2
- # Get an API key + token:
3
- # - Key: `https://trello.com/power-ups/admin` (select your Power-Up, then API key)
4
- # - Token: `https://trello.com/1/authorize?expiration=never&name=CommandableTests&scope=read,write&response_type=token&key=<YOUR_KEY>`
5
- TRELLO_API_KEY=a54b5d6ea14cee2ae85d754a5e923f86
6
- TRELLO_API_TOKEN=ATTA990a95b3d0f319385075acad0dd80915c056a35350c34a198bb47f0e664ead3865118535