Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .github/actionlint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ paths:
- '"inputs" section is alias node but mapping node is expected'
- '"paths" section must be sequence node but got alias node with "" tag'
- '"paths-ignore" section must be sequence node but got alias node with "" tag'
.github/workflows/release.yaml:
.github/workflows/issue.yaml:
ignore:
- 'missing input "app-id" which is required by action "actions/create-github-app-token@v3"'
- 'input "client-id" is not defined in action "actions/create-github-app-token@v3"'
.github/workflows/test.yaml:
ignore:
- 'property ".+" is not defined in object type'
4 changes: 2 additions & 2 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ jobs:

steps:
- name: "Checkout"
uses: actions/checkout@v6
uses: actions/checkout@v7

- name: "Setup Node 24"
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: 24

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/draft.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:

steps:
- name: "Checkout"
uses: actions/checkout@v6
uses: actions/checkout@v7

- name: "Draft Release Action"
id: draft
Expand Down
20 changes: 11 additions & 9 deletions .github/workflows/issue.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,36 +9,38 @@ jobs:
name: "Issue"
if: ${{ !github.event.issue.type || github.event.issue.type.name == 'Bug' }}
runs-on: ubuntu-latest
timeout-minutes: 5
timeout-minutes: 15

permissions:
contents: write
issues: write

steps:
- name: "Checkout"
uses: actions/checkout@v6
uses: actions/checkout@v7

- name: "Create App Token"
id: app
uses: actions/create-github-app-token@v3
with:
app-id: 146360
client-id: ${{ vars.APP_CLIENT_ID }}
private-key: ${{ secrets.APP_PRIVATE_KEY }}

- name: "AI Issue"
uses: smashedr/ai-issue-action@master
uses: cssnr/ai-issue-action@v1
env:
GOOGLE_GENERATIVE_AI_API_KEY: ${{ secrets.GOOGLE_GENERATIVE_AI_API_KEY }}
with:
token: ${{ steps.app.outputs.token }}
model: gemini-2.5-flash
tail: |
_Response generated by the [AI Issue Action](https://github.com/cssnr/ai-issue-action)._
instructions: |
You are a helpful assistant responding to a GitHub Issue created by user @${{ github.actor }}
in the repository ${{ github.server_url }}/${{ github.repository }}
Provide initial triage and troubleshooting steps, then gather any additional information needed to proceed.
Respond using your general knowledge of web extensions and the following knowledge files:
file: |
.github/instructions/issue.md
Respond using your general knowledge of Web Extensions and the following knowledge files:
#url: https://cssnr.github.io/auto-auth/llms.txt
path: |
README.md
AGENTS.md
tail: |
_Response generated by the [AI Issue Action](https://github.com/smashedr/ai-issue-action)._
2 changes: 1 addition & 1 deletion .github/workflows/labeler.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:

steps:
- name: "Checkout Configs"
uses: actions/checkout@v6
uses: actions/checkout@v7
with:
repository: cssnr/configs
ref: master
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ jobs:

steps:
- name: "Checkout"
uses: actions/checkout@v6
uses: actions/checkout@v7

- name: "Setup Node 24"
uses: actions/setup-node@v6
uses: actions/setup-node@v7
with:
node-version: 24

Expand Down
48 changes: 38 additions & 10 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,46 @@
Auto Auth is a Web Extension to allow automatic HTTP Basic Authentication.

- Chrome + Firefox + Firefox Android all using MV3
- WXT Framework with TypeScript + Vue3
- WXT (https://wxt.dev/) Framework https://github.com/wxt-dev/wxt
- TypeScript 6 with Vue 3.5
- Bootstrap 5.3 and FontAwesome

## Application Structure
## Project Structure

- The `@/` import resolves to `src/`
- Manifest generated from `wxt.config.ts`
- Entrypoint specific options in `src/entrypoints/<name>/index.html`
- Content script specific options in `src/entrypoints/content(.<name>)/index.ts`
- Locales are in `src/locales` and use `@wxt-dev/i18n/module` in `yaml` format
IMPORTANT: Both `useOptions()` and `getOptions()` ALWAYS have DEFAULT values set!

## Style & Conventions
### Files

- Prettier: no semi, single quotes, printWidth 90 (120 for `.vue`).
- Custom logger `debug()` from `utils/logger.ts` use for all log output.
- `wxt.config.ts` - WXT Config and Extension Manifest
- `src/app.config.ts` - WXT Application Runtime Configuration
- `src/entrypoints/background/index.ts` Background Service Worker
- `src/entrypoints/content/index.ts` Content Script Entrypoint
- `src/assets/css/styles.scss` - Main SCSS styles
- `src/main.ts` - Imported by all `src/entrypoints/*/main.ts` files

### Directories

- `src` - Source directory for the web extension, WXT Framework.
- `src/entrypoints/**` - WXT entrypoints
- `src/locales` - YAML locale files using `@wxt-dev/i18n`
- `src/components` - Vue components
- `src/directives` - Vue directives

## Commands

ALWAYS use the `npm run *` command NEVER pipe output into arbitrary truncation commands.

| Command | What it does |
| ------------------ | --------------------------------- |
| `npm run build` | `wxt build` to `.output` |
| `npm run build:ff` | build Firefox only (faster) |
| `npm run clean` | `rm -rf .output` |
| `npm run lint` | `npx eslint src` ESLint |
| `npm run tsc` | `vue-tsc --noEmit` TS Check |
| `npm run prepare` | `wxt prepare` Generate i18n Types |
| `npm run prettier` | ALWAYS RUN AFTER EDITING FILES |

## Follow Existing Patterns

Before adding or modifying any feature, search the codebase for the closest existing implementation and follow its full integration chain.
Do not stop after writing the core logic — trace every file that touches the feature (imports, registration, configuration, UI binding) and ensure each is accounted for.
8 changes: 0 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -274,11 +274,3 @@ Other Web Extensions I have created and published:
- [New Tab](https://github.com/cssnr/new-tab?tab=readme-ov-file#readme)

For a full list of current projects visit: [https://cssnr.github.io/](https://cssnr.github.io/)

<a href="https://github.com/cssnr/auto-auth/stargazers">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=cssnr/auto-auth&type=date&legend=bottom-right&theme=dark" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=cssnr/auto-auth&type=date&legend=bottom-right" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=cssnr/auto-auth&type=date&legend=bottom-right" />
</picture>
</a>
Loading
Loading