9917817f53057459708ce269033943829a8120d6

Author
TheEdgeOfRage <git@theedgeofrage.com>
Committer
TheEdgeOfRage <git@theedgeofrage.com>
Date

Message

Move dune specific skills out of repo

Diff

This diff is truncated to protect this page.

  1diff --git a/dot_agents/skills/go-code/SKILL.md b/dot_agents/skills/go-code/SKILL.md
  2deleted file mode 100644
  3index 415c1463e65eb9bac543636c65f918e5ae3f8ab4..0000000000000000000000000000000000000000
  4--- a/dot_agents/skills/go-code/SKILL.md
  5+++ /dev/null
  6@@ -1,8 +0,0 @@
  7----
  8-name: go-code
  9-description: Rules for writing go code
 10----
 11-
 12-## Go development
 13-
 14-- Always use `make lint` if available, if not, prefer `go vet` over `go build`
 15diff --git a/dot_agents/skills/linear-update/SKILL.md b/dot_agents/skills/linear-update/SKILL.md
 16deleted file mode 100644
 17index 9df76bc9292aa469c6cb59003bedf4cf4be86ca5..0000000000000000000000000000000000000000
 18--- a/dot_agents/skills/linear-update/SKILL.md
 19+++ /dev/null
 20@@ -1,122 +0,0 @@
 21----
 22-name: linear-update
 23-version: 2.0.0
 24-description: "Draft and post a weekly status update to Linear for a project OR initiative. Auto-detects which the name refers to, synthesizes Past week / Next week / Asks from Linear + Slack, and posts on approval."
 25-metadata:
 26-  openclaw:
 27-    category: "productivity"
 28-    requires:
 29-      mcpServers: ["linear", "slack"]
 30----
 31-
 32-# /linear-update
 33-
 34-Draft and post a weekly status update to Linear. Takes a **name**, figures out whether it
 35-is a Linear **project** or **initiative**, then writes the update in the **Past week /
 36-Next week / Asks** format and posts it on your approval.
 37-
 38-## Parameters
 39-
 40-| Parameter | Required | Default | Description |
 41-|-----------|----------|---------|-------------|
 42-| `name` | No | — | Name of the Linear project or initiative to update (passed as the argument). The skill auto-detects which it is. If omitted, ask the user. |
 43-| `channels` | No | auto | Optional Slack channel name(s) to pull context from. If omitted, auto-discover and confirm. |
 44-
 45-## Step 1 — Resolve the name (project vs. initiative)
 46-
 47-This is the first thing the skill does and it determines everything downstream.
 48-
 49-1. If no `name` was provided, ask the user which project or initiative to update.
 50-2. Search both in parallel:
 51-   - `list_initiatives` with `query: <name>`
 52-   - `list_projects` with `query: <name>`
 53-3. Match case-insensitively against the returned names:
 54-   - **Exactly one type matches** → use that type (`project` or `initiative`).
 55-   - **Both an initiative and a project match** (or near-match) → ask the user which one they mean before continuing. Do not guess.
 56-   - **Nothing matches** → show the closest candidates from both lists and ask the user to pick or rename.
 57-4. Hold onto the resolved `type` (`project` | `initiative`) and the canonical name/ID — every later tool call branches on it.
 58-
 59-## Step 2 — Gather context (parallel where possible)
 60-
 61diff --git a/dot_agents/skills/share-tables/SKILL.md b/dot_agents/skills/share-tables/SKILL.md
 62deleted file mode 100644
 63index 72cbe8efade7cc92880b7e8374d8b93d5b5570f1..0000000000000000000000000000000000000000
 64--- a/dot_agents/skills/share-tables/SKILL.md
 65+++ /dev/null
 66@@ -1,104 +0,0 @@
 67----
 68-name: share-tables
 69diff --git a/dot_agents/skills/share-tables/mappings_prod b/dot_agents/skills/share-tables/mappings_prod
 70deleted file mode 100644
 71index 327c8d2f9add112b8464aa3f77e6d8e3e6ba8074..0000000000000000000000000000000000000000
 72--- a/dot_agents/skills/share-tables/mappings_prod
 73+++ /dev/null
 74@@ -1,3 +0,0 @@
 75-stablecore:29946
 76-dune_curated_data:35887
 77-dune:12
 78diff --git a/dot_agents/skills/share-tables/scripts/executable_get-table.sh b/dot_agents/skills/share-tables/scripts/executable_get-table.sh
 79deleted file mode 100644
 80index 2e22403e4f012848ec2614bd146fa3aadca98a83..0000000000000000000000000000000000000000
 81--- a/dot_agents/skills/share-tables/scripts/executable_get-table.sh
 82+++ /dev/null
 83@@ -1,53 +0,0 @@
 84-#!/usr/bin/env bash
 85-# Look up the type (and view SQL, if applicable) of one or more tables via
 86-# the Catalog gRPC service, authenticating as a given source team.
 87-#
 88-# One request per table. No recursion — view-dependency traversal is the
 89-# LLM's responsibility.
 90-#
 91-# Usage:
 92-#   get-table.sh <dev|prod> <from_handle:from_id> <catalog.schema.table>...
 93-#
 94-# Example:
 95-#   get-table.sh prod stablecore:29946 dune.stablecore.stablecoins_evm_balances_enriched_v2
 96-#
 97-# Requires: grpcurl, jq, tailscale network access to the catalog service.
 98-set -euo pipefail
 99-
100-if (( $# < 3 )); then
101-  echo "usage: $0 <dev|prod> <from_handle:from_id> <catalog.schema.table>..." >&2
102-  exit 2
103-fi
104-
105-env=$1 from=$2
106-shift 2
107-
108-case $env in
109-  dev)  host=dev-catalog-svc-trino.ayu-decibel.ts.net:4040 ;;
110-  prod) host=prod-catalog-service-trino.ayu-decibel.ts.net:4040 ;;
111-  *) echo "error: env must be dev or prod (got: $env)" >&2; exit 2 ;;
112-esac
113-
114-if [[ $from != *:* ]]; then
115-  echo "error: from must be in the form handle:id (got: $from)" >&2
116-  exit 2
117-fi
118-from_id=${from##*:}
119-[[ $from_id =~ ^[0-9]+$ ]] || { echo "error: from id must be numeric (got: $from_id)" >&2; exit 2; }
120-
121-creds=$(printf '{"customerID": "team_%s"}' "$from_id" | base64 -w0 | tr -d '=')
122-
123-for fqn in "$@"; do
124-  IFS='.' read -ra parts <<<"$fqn"
125-  if (( ${#parts[@]} != 3 )) || [[ -z ${parts[0]} || -z ${parts[1]} || -z ${parts[2]} ]]; then
126-    echo "error: table must be in the form catalog.schema.name (got: $fqn)" >&2
127-    exit 2
128-  fi
129-  catalog=${parts[0]} schema=${parts[1]} name=${parts[2]}
130-  echo "=== $catalog.$schema.$name ==="
131-  grpcurl -plaintext \
132-    -d "{\"sql_id\":{\"catalog\":\"$catalog\",\"schema\":\"$schema\",\"name\":\"$name\"},\"credentials\":\"$creds\"}" \
133-    "$host" \
134-    core.catalog.apis.v1.CatalogService/GetTrinoTable \
135-    | jq -r '"type: " + .table.type, (if .table.viewMetadata then "viewSql:\n" + .table.viewMetadata.viewSql else empty end)'
136-done
137diff --git a/dot_agents/skills/share-tables/scripts/executable_share.sh b/dot_agents/skills/share-tables/scripts/executable_share.sh
138deleted file mode 100644
139index 57622f96203367085573ab6e7dd50a94dbeacf69..0000000000000000000000000000000000000000
140--- a/dot_agents/skills/share-tables/scripts/executable_share.sh
141+++ /dev/null
142@@ -1,66 +0,0 @@
143-#!/usr/bin/env bash
144-# Grant or revoke a team's access to another team's private catalog tables
145-# via the Catalog gRPC service.
146-#
147-# Usage:
148-#   share.sh <dev|prod> <add|remove> <from_handle:from_id> <dest_handle> <catalog.schema.table>...
149-#
150-# Example:
151-#   share.sh prod add stablecore:29946 gfdionis_team dune.stablecore.stablecoins_evm_activity_enriched
152-#
153-# Requires: grpcurl, tailscale network access to the catalog service.
154-set -euo pipefail
155-
156-if (( $# < 5 )); then
157-  echo "usage: $0 <dev|prod> <add|remove> <from_handle:from_id> <dest_handle> <catalog.schema.table>..." >&2
158-  exit 2
159-fi
160-
161-env=$1 action=$2 from=$3 dest=$4
162-shift 4
163-
164-case $env in
165-  dev)  host=dev-catalog-svc-trino.ayu-decibel.ts.net:4040 ;;
166-  prod) host=prod-catalog-service-trino.ayu-decibel.ts.net:4040 ;;
167-  *) echo "error: env must be dev or prod (got: $env)" >&2; exit 2 ;;
168-esac
169-
170-case $action in
171-  add)    method=AddTableTeamAccess ;;
172-  remove) method=RemoveTableTeamAccess ;;
173-  *) echo "error: action must be add or remove (got: $action)" >&2; exit 2 ;;
174-esac
175-
176-if [[ $from != *:* ]]; then
177-  echo "error: from must be in the form handle:id (got: $from)" >&2
178-  exit 2
179-fi
180-from_id=${from##*:}
181-[[ $from_id =~ ^[0-9]+$ ]] || { echo "error: from id must be numeric (got: $from_id)" >&2; exit 2; }
182-
183-creds=$(printf '{"customerID":"team_%s","duneAdminKey":"duneDatashare"}' "$from_id" | base64 -w0 | tr -d '=')
184-
185-for fqn in "$@"; do
186-  IFS='.' read -ra parts <<<"$fqn"
187-  if (( ${#parts[@]} != 3 )) || [[ -z ${parts[0]} || -z ${parts[1]} || -z ${parts[2]} ]]; then
188-    echo "error: table must be in the form catalog.schema.name (got: $fqn)" >&2
189-    exit 2
190-  fi
191-  catalog=${parts[0]} schema=${parts[1]} name=${parts[2]}
192-  echo ">>> $action $catalog.$schema.$name -> $dest"
193-  set +e
194-  out=$(grpcurl -plaintext \
195-    -d "{\"sql_id\":{\"catalog\":\"$catalog\",\"schema\":\"$schema\",\"name\":\"$name\"},\"team_handle\":\"$dest\",\"credentials\":\"$creds\"}" \
196-    "$host" \
197-    "core.catalog.apis.v1.CatalogService/$method" 2>&1)
198-  status=$?
199-  set -e
200-  printf '%s\n' "$out"
201-  if (( status != 0 )); then
202-    if [[ $out == *"can only share private tables"* ]]; then
203-      echo "    (already public, skipping)"
204-      continue
205-    fi
206-    exit "$status"
207-  fi
208-done