forked from Uniswap/interface
-
Notifications
You must be signed in to change notification settings - Fork 0
Update tag_and_release.yml (#66) #122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from all commits
Commits
Show all changes
40 commits
Select commit
Hold shift + click to select a range
8e3b4a5
Update tag_and_release.yml (#66)
Dargon789 4b5c40f
Update tag_and_release.yml (#67)
Dargon789 008555b
Potential fix for code scanning alert no. 10: Incomplete regular expr…
Dargon789 085f13d
Create SECURITY.md
Dargon789 a6b4970
Potential fix for code scanning alert no. 11: Incomplete string escap…
Dargon789 8a4ae07
Create static.yml
Dargon789 46b0af5
Create jekyll-gh-pages.yml
Dargon789 bdef851
fix: packages/ui/package.json to reduce vulnerabilities
snyk-bot d061a4d
Update tag_and_release.yml (#68)
Dargon789 0b9e0dc
Create config.yml (#75)
Dargon789 158f514
fix: apps/mobile/Gemfile & apps/mobile/Gemfile.lock to reduce vulnera…
snyk-io[bot] 1cbe82b
build(deps): bump the npm_and_yarn group across 7 directories with 5 …
dependabot[bot] 9ec565f
Create notify vercel.yml
Dargon789 6fec7e2
Delete .github/workflows/notify vercel.yml
Dargon789 ab61fb4
Merge branch 'main' of https://github.com/Dargon789/interface
Dargon789 3f6d466
build(deps-dev): bump playwright
dependabot[bot] 8d28ba5
build(deps): bump hono
dependabot[bot] 9095c2c
Merge branch 'Uniswap:main' into main
Dargon789 7f595cd
Create docker.yml (#87)
Dargon789 557b3bd
ci(release): publish latest release
hello-happy-puppy e399998
fix: apps/mobile/Gemfile & apps/mobile/Gemfile.lock to reduce vulnera…
snyk-io[bot] c7e7311
build(deps-dev): bump js-yaml
dependabot[bot] 479fb28
fix: apps/mobile/Gemfile & apps/mobile/Gemfile.lock to reduce vulnera…
snyk-bot 398296f
build(deps): bump the npm_and_yarn group across 3 directories with 4 …
dependabot[bot] 6ad0d16
Potential fix for code scanning alert no. 9: Incomplete regular expre…
Dargon789 2aea294
Uniswap/main (#98)
Dargon789 7cd9f46
build(deps): bump the npm_and_yarn group across 1 directory with 2 up…
dependabot[bot] 664d157
build(deps-dev): bump the npm_and_yarn group across 2 directories wit…
dependabot[bot] f20697b
Merge remote-tracking branch 'upstream/main'
googleworkspace-bot 37afe8b
Merge remote-tracking branch 'upstream/main'
googleworkspace-bot 8ac9c76
fix: apps/mobile/Gemfile & apps/mobile/Gemfile.lock to reduce vulnera…
Dargon789 5aeb7ce
Merge remote-tracking branch 'upstream/main'
googleworkspace-bot 0c1bb25
build(deps): bump the npm_and_yarn group across 7 directories with 7 …
dependabot[bot] 23813b0
Merge remote-tracking branch 'upstream/main'
googleworkspace-bot a2d840e
build(deps): bump the npm_and_yarn group across 2 directories with 3 …
dependabot[bot] 0a863e3
Update apps/web/src/state/migrations/16.ts
Dargon789 fadaa86
Update apps/web/src/pages/Landing/components/cards/ValuePropCard.tsx
Dargon789 b356d0f
build(deps): bump hono (#129)
Dargon789 75228c8
Revert "build(deps): bump hono (#129)"
googleworkspace-bot 503b305
Merge remote-tracking branch 'origin/snyk-fix-f20e47a9545da7bc229d8ee…
googleworkspace-bot File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| # Use the latest 2.1 version of CircleCI pipeline process engine. | ||
| # See: https://circleci.com/docs/configuration-reference | ||
| version: 2.1 | ||
|
|
||
| # Define a job to be invoked later in a workflow. | ||
| # See: https://circleci.com/docs/jobs-steps/#jobs-overview & https://circleci.com/docs/configuration-reference/#jobs | ||
| jobs: | ||
| say-hello: | ||
| # Specify the execution environment. You can specify an image from Docker Hub or use one of our convenience images from CircleCI's Developer Hub. | ||
| # See: https://circleci.com/docs/executor-intro/ & https://circleci.com/docs/configuration-reference/#executor-job | ||
| docker: | ||
| # Specify the version you desire here | ||
| # See: https://circleci.com/developer/images/image/cimg/base | ||
| - image: cimg/base:current | ||
|
|
||
| # Add steps to the job | ||
| # See: https://circleci.com/docs/jobs-steps/#steps-overview & https://circleci.com/docs/configuration-reference/#steps | ||
| steps: | ||
| # Checkout the code as the first step. | ||
| - checkout | ||
| - run: | ||
| name: "Say hello" | ||
| command: "echo Hello, World!" | ||
|
|
||
| # Orchestrate jobs using workflows | ||
| # See: https://circleci.com/docs/workflows/ & https://circleci.com/docs/configuration-reference/#workflows | ||
| workflows: | ||
| say-hello-workflow: # This is the name of the workflow, feel free to change it to better match your workflow. | ||
| # Inside the workflow, you define the jobs you want to run. | ||
| jobs: | ||
| - say-hello |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,100 @@ | ||
| name: Docker | ||
|
|
||
| # This workflow uses actions that are not certified by GitHub. | ||
| # They are provided by a third-party and are governed by | ||
| # separate terms of service, privacy policy, and support | ||
| # documentation. | ||
|
|
||
| on: | ||
| schedule: | ||
| - cron: '21 12 * * *' | ||
| push: | ||
| branches: [ "master" ] | ||
| # Publish semver tags as releases. | ||
| tags: [ 'v*.*.*' ] | ||
| pull_request: | ||
| branches: [ "master" ] | ||
|
|
||
| env: | ||
| # Use docker.io for Docker Hub if empty | ||
| REGISTRY: ghcr.io | ||
| # github.repository as <account>/<repo> | ||
| IMAGE_NAME: ${{ github.repository }} | ||
|
|
||
|
|
||
| jobs: | ||
| build: | ||
| - name: Build the Docker image | ||
| run: docker build . --file path/to/Dockerfile --tag my-image-name:$(date +%s) | ||
|
|
||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| contents: read | ||
| packages: write | ||
| # This is used to complete the identity challenge | ||
| # with sigstore/fulcio when running outside of PRs. | ||
| id-token: write | ||
|
|
||
| steps: | ||
| - name: Checkout repository | ||
| uses: actions/checkout@v4 | ||
|
|
||
| # Install the cosign tool except on PR | ||
| # https://github.com/sigstore/cosign-installer | ||
| - name: Install cosign | ||
| if: github.event_name != 'pull_request' | ||
| uses: sigstore/cosign-installer@59acb6260d9c0ba8f4a2f9d9b48431a222b68e20 #v3.5.0 | ||
| with: | ||
| cosign-release: 'v2.2.4' | ||
|
|
||
| # Set up BuildKit Docker container builder to be able to build | ||
| # multi-platform images and export cache | ||
| # https://github.com/docker/setup-buildx-action | ||
| - name: Set up Docker Buildx | ||
| uses: docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226 # v3.0.0 | ||
|
|
||
| # Login against a Docker registry except on PR | ||
| # https://github.com/docker/login-action | ||
| - name: Log into registry ${{ env.REGISTRY }} | ||
| if: github.event_name != 'pull_request' | ||
| uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3.0.0 | ||
| with: | ||
| registry: ${{ env.REGISTRY }} | ||
| username: ${{ github.actor }} | ||
| password: ${{ secrets.GITHUB_TOKEN }} | ||
|
|
||
| # Extract metadata (tags, labels) for Docker | ||
| # https://github.com/docker/metadata-action | ||
| - name: Extract Docker metadata | ||
| id: meta | ||
| uses: docker/metadata-action@96383f45573cb7f253c731d3b3ab81c87ef81934 # v5.0.0 | ||
| with: | ||
| images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | ||
|
|
||
| # Build and push Docker image with Buildx (don't push on PR) | ||
| # https://github.com/docker/build-push-action | ||
| - name: Build and push Docker image | ||
| id: build-and-push | ||
| uses: docker/build-push-action@v5.0.0 | ||
| with: | ||
| context: ./ | ||
| push: ${{ github.event_name != 'pull_request' }} | ||
| tags: ${{ steps.meta.outputs.tags }} | ||
| labels: ${{ steps.meta.outputs.labels }} | ||
| cache-from: type=gha | ||
| cache-to: type=gha,mode=max | ||
|
|
||
| # Sign the resulting Docker image digest except on PRs. | ||
| # This will only write to the public Rekor transparency log when the Docker | ||
| # repository is public to avoid leaking data. If you would like to publish | ||
| # transparency data even for private images, pass --force to cosign below. | ||
| # https://github.com/sigstore/cosign | ||
| - name: Sign the published Docker image | ||
| if: ${{ github.event_name != 'pull_request' }} | ||
| env: | ||
| # https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-an-intermediate-environment-variable | ||
| TAGS: ${{ steps.meta.outputs.tags }} | ||
| DIGEST: ${{ steps.build-and-push.outputs.digest }} | ||
| # This step uses the identity token to provision an ephemeral certificate | ||
| # against the sigstore community Fulcio instance. | ||
| run: echo "${TAGS}" | xargs -I {} cosign sign --yes {}@${DIGEST} | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| #!/bin/bash | ||
| # Copied from https://github.com/diet103/claude-code-infrastructure-showcase/blob/c586f9d8854989abbe9040cde61527888ded3904/.claude/hooks/skill-activation-prompt.sh | ||
| set -e | ||
|
|
||
| cd "$CLAUDE_PROJECT_DIR/.claude/hooks" | ||
| cat | bun run skill-activation-prompt.ts |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,132 @@ | ||
| #!/usr/bin/env node | ||
| /** biome-ignore-all lint/suspicious/noConsole: script output */ | ||
| // Copied from https://github.com/diet103/claude-code-infrastructure-showcase/blob/c586f9d8854989abbe9040cde61527888ded3904/.claude/hooks/skill-activation-prompt.ts | ||
| import { readFileSync } from 'fs' | ||
| import { join } from 'path' | ||
|
|
||
| interface HookInput { | ||
| session_id: string | ||
| transcript_path: string | ||
| cwd: string | ||
| permission_mode: string | ||
| prompt: string | ||
| } | ||
|
|
||
| interface PromptTriggers { | ||
| keywords?: string[] | ||
| intentPatterns?: string[] | ||
| } | ||
|
|
||
| interface SkillRule { | ||
| type: 'guardrail' | 'domain' | ||
| enforcement: 'block' | 'suggest' | 'warn' | ||
| priority: 'critical' | 'high' | 'medium' | 'low' | ||
| promptTriggers?: PromptTriggers | ||
| } | ||
|
|
||
| interface SkillRules { | ||
| version: string | ||
| skills: Record<string, SkillRule> | ||
| } | ||
|
|
||
| interface MatchedSkill { | ||
| name: string | ||
| matchType: 'keyword' | 'intent' | ||
| config: SkillRule | ||
| } | ||
|
|
||
| async function main() { | ||
| try { | ||
| // Read input from stdin | ||
| const input = readFileSync(0, 'utf-8') | ||
| const data: HookInput = JSON.parse(input) | ||
| const prompt = data.prompt.toLowerCase() | ||
|
|
||
| // Load skill rules | ||
| const projectDir = process.env.CLAUDE_PROJECT_DIR || '$HOME/project' | ||
| const rulesPath = join(projectDir, '.claude', 'skills', 'skill-rules.json') | ||
| const rules: SkillRules = JSON.parse(readFileSync(rulesPath, 'utf-8')) | ||
|
|
||
| const matchedSkills: MatchedSkill[] = [] | ||
|
|
||
| // Check each skill for matches | ||
| for (const [skillName, config] of Object.entries(rules.skills)) { | ||
| const triggers = config.promptTriggers | ||
| if (!triggers) { | ||
| continue | ||
| } | ||
|
|
||
| // Keyword matching | ||
| if (triggers.keywords) { | ||
| const keywordMatch = triggers.keywords.some((kw) => prompt.includes(kw.toLowerCase())) | ||
| if (keywordMatch) { | ||
| matchedSkills.push({ name: skillName, matchType: 'keyword', config }) | ||
| continue | ||
| } | ||
| } | ||
|
|
||
| // Intent pattern matching | ||
| if (triggers.intentPatterns) { | ||
| const intentMatch = triggers.intentPatterns.some((pattern) => { | ||
| const regex = new RegExp(pattern, 'i') | ||
| return regex.test(prompt) | ||
| }) | ||
| if (intentMatch) { | ||
| matchedSkills.push({ name: skillName, matchType: 'intent', config }) | ||
| } | ||
| } | ||
| } | ||
|
|
||
| // Generate output if matches found | ||
| if (matchedSkills.length > 0) { | ||
| let output = '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n' | ||
| output += '🎯 SKILL ACTIVATION CHECK\n' | ||
| output += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n' | ||
|
|
||
| // Group by priority | ||
| const critical = matchedSkills.filter((s) => s.config.priority === 'critical') | ||
| const high = matchedSkills.filter((s) => s.config.priority === 'high') | ||
| const medium = matchedSkills.filter((s) => s.config.priority === 'medium') | ||
| const low = matchedSkills.filter((s) => s.config.priority === 'low') | ||
|
|
||
| if (critical.length > 0) { | ||
| output += '⚠️ CRITICAL SKILLS (REQUIRED):\n' | ||
| critical.forEach((s) => (output += ` → ${s.name}\n`)) | ||
| output += '\n' | ||
| } | ||
|
|
||
| if (high.length > 0) { | ||
| output += '📚 RECOMMENDED SKILLS:\n' | ||
| high.forEach((s) => (output += ` → ${s.name}\n`)) | ||
| output += '\n' | ||
| } | ||
|
|
||
| if (medium.length > 0) { | ||
| output += '💡 SUGGESTED SKILLS:\n' | ||
| medium.forEach((s) => (output += ` → ${s.name}\n`)) | ||
| output += '\n' | ||
| } | ||
|
|
||
| if (low.length > 0) { | ||
| output += '📌 OPTIONAL SKILLS:\n' | ||
| low.forEach((s) => (output += ` → ${s.name}\n`)) | ||
| output += '\n' | ||
| } | ||
|
|
||
| output += 'ACTION: Use Skill tool BEFORE responding\n' | ||
| output += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n' | ||
|
|
||
| console.log(output) | ||
| } | ||
|
|
||
| process.exit(0) | ||
| } catch (err) { | ||
| console.error('Error in skill-activation-prompt hook:', err) | ||
| process.exit(1) | ||
| } | ||
| } | ||
|
|
||
| main().catch((err) => { | ||
| console.error('Uncaught error:', err) | ||
| process.exit(1) | ||
| }) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,32 @@ | ||
| { | ||
| "permissions": { | ||
| "deny": [ | ||
| "Read(**/.env)", | ||
| "Edit(**/.env)", | ||
| "Read(~/.aws/**)", | ||
| "Edit(~/.aws/**)", | ||
| "Read(~/.ssh/**)", | ||
| "Edit(~/.ssh/**)", | ||
| "Read(~/.gnupg/**)", | ||
| "Edit(~/.gnupg/**)", | ||
| "Read(~/.git-credentials)", | ||
| "Edit(~/.git-credentials)", | ||
| "Read($HOME/Library/Keychains/**)", | ||
| "Edit($HOME/Library/Keychains/**)", | ||
| "Read(/private/etc/**)", | ||
| "Edit(/private/etc/**)" | ||
| ] | ||
| }, | ||
| "hooks": { | ||
| "UserPromptSubmit": [ | ||
| { | ||
| "hooks": [ | ||
| { | ||
| "type": "command", | ||
| "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/skill-activation-prompt.sh" | ||
| } | ||
| ] | ||
| } | ||
| ] | ||
| } | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| { | ||
| "version": "1.0", | ||
| "description": "Skill activation triggers for Claude Code. Controls when skills automatically suggest or block actions.", | ||
| "skills": { | ||
| "web-e2e": { | ||
| "type": "domain", | ||
| "enforcement": "block", | ||
| "priority": "critical", | ||
| "description": "Run, debug, and create Playwright e2e tests for the web app.", | ||
| "promptTriggers": { | ||
| "keywords": ["e2e", "end-to-end", "playwright"], | ||
| "intentPatterns": ["(run|start|debug|create|explain).*?e2e"] | ||
| } | ||
| } | ||
| }, | ||
| "notes": { | ||
| "enforcement_types": { | ||
| "suggest": "Skill suggestion appears but doesn't block execution", | ||
| "block": "Requires skill to be used before proceeding (guardrail)", | ||
| "warn": "Shows warning but allows proceeding" | ||
| }, | ||
| "priority_levels": { | ||
| "critical": "Highest - Always trigger when matched", | ||
| "high": "Important - Trigger for most matches", | ||
| "medium": "Moderate - Trigger for clear matches", | ||
| "low": "Optional - Trigger only for explicit matches" | ||
| } | ||
| } | ||
| } |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.