cellenium 0.2.0__tar.gz → 0.3.2__tar.gz
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.
- cellenium-0.3.2/.claude/commands/cellenium/artifact.md +9 -0
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/checklist/before-startup.md +2 -2
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/checklist/cruising.md +2 -2
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/checklist/fordec.md +2 -2
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/checklist/landing.md +2 -2
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/evaluator.md +2 -3
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/executor.md +2 -2
- cellenium-0.3.2/.claude/commands/cellenium/locator-writer.md +9 -0
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/prd-reader.md +2 -3
- cellenium-0.3.2/.claude/commands/cellenium/test-spec.md +8 -0
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/web.md +2 -3
- {cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/writer.md +2 -3
- {cellenium-0.2.0 → cellenium-0.3.2}/.env.example +2 -1
- {cellenium-0.2.0 → cellenium-0.3.2}/PKG-INFO +16 -13
- {cellenium-0.2.0 → cellenium-0.3.2}/README.md +209 -206
- {cellenium-0.2.0 → cellenium-0.3.2}/pyproject.toml +45 -40
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/crew.py +1 -1
- cellenium-0.3.2/src/cellenium/api/vision.py +67 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/cli.py +58 -1
- cellenium-0.3.2/src/cellenium/functions/__init__.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/settings.py +8 -8
- {cellenium-0.2.0 → cellenium-0.3.2}/tests/test_cli.py +28 -1
- cellenium-0.3.2/tests/test_vision_api.py +68 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/uv.lock +3865 -3896
- cellenium-0.2.0/.claude/commands/testflow/artifact.md +0 -9
- cellenium-0.2.0/.claude/commands/testflow/locator-writer.md +0 -10
- cellenium-0.2.0/.claude/commands/testflow/test-spec.md +0 -8
- cellenium-0.2.0/main.py +0 -6
- {cellenium-0.2.0 → cellenium-0.3.2}/.claude/bin/checklist.js +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/artifact/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/before-startup/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/cruising/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/checklist → cellenium-0.3.2/.claude/skills/cellenium}/emergency/fordec/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/evaluator/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/executor/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/landing/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/locator-writer/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/prd-reader/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/test-spec/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/web/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/cellenium}/writer/SKILL.md +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/.claude/skills/checklist/before-startup/SKILL.md +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/.claude/skills/checklist/cruising/SKILL.md +0 -0
- {cellenium-0.2.0/.claude/skills/testflow → cellenium-0.3.2/.claude/skills/checklist}/emergency/fordec/SKILL.md +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/.claude/skills/checklist/landing/SKILL.md +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/.claude/test/install.test.js +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/.gitignore +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/LICENSE +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/__init__.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/__init__.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/__init__.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/__init__.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/config/agents.yaml +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/config/tasks.yaml +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/schemas.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/skills/evaluator/SKILL.md +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/skills/vision/SKILL.md +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/agents/vision/tools/vision.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/config.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/tools/__init__.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/ai/tools/image_encoder.py +0 -0
- {cellenium-0.2.0/src/cellenium/engine → cellenium-0.3.2/src/cellenium/api}/__init__.py +0 -0
- {cellenium-0.2.0/src/cellenium/functions → cellenium-0.3.2/src/cellenium/engine}/__init__.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/engine/manager.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/engine/page_engine.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/functions/locators.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/functions/logger.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/functions/sheets.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/src/cellenium/templates/env.template +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/tests/e2e/conftest.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/tests/e2e/test_google_search.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/tests/test_google_sheet_locators.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/tests/test_page_engine.py +0 -0
- {cellenium-0.2.0 → cellenium-0.3.2}/tests/test_settings.py +0 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: artifact
|
|
3
|
+
description: Turn a PRD or specification into traceable pytest tests, execute them, and evaluate their quality through the complete TestFlow pipeline.
|
|
4
|
+
argument-hint: <PRD/spec path and test target>
|
|
5
|
+
command: /cellenium:artifact
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/artifact/SKILL.md` (or `~/.claude/skills/cellenium/artifact/SKILL.md` if it is not in the project) and follow it as your instructions. Each stage it names lives in a sibling folder, e.g. `prd-reader` is `.claude/skills/cellenium/prd-reader/SKILL.md`; read a stage's SKILL.md before applying it.
|
|
9
|
+
Pass `$ARGUMENTS` as the pipeline input and complete every reachable TestFlow stage.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: before-startup
|
|
3
3
|
description: System readiness check before building tests. Use before starting TestFlow or writing any test to verify that the repository, toolchain, browsers, configuration, external services, test infrastructure, baseline, and inputs are healthy and ready for test creation.
|
|
4
|
-
command: /before-startup
|
|
4
|
+
command: /cellenium:checklist:before-startup
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Before doing anything else, read `.claude/skills/cellenium/before-startup/SKILL.md` (or `~/.claude/skills/cellenium/before-startup/SKILL.md` if it is not in the project) and follow it as your instructions.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cruising
|
|
3
3
|
description: In-flight check while tests are being built. Use after any TestFlow stage, after writing or changing tests, or before a commit or PR to verify that everything is in place and to hunt for critical errors and potential bugs in the tests, locators, fixtures, and observed product behavior.
|
|
4
|
-
command: /cruising
|
|
4
|
+
command: /cellenium:checklist:cruising
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Before doing anything else, read `.claude/skills/cellenium/cruising/SKILL.md` (or `~/.claude/skills/cellenium/cruising/SKILL.md` if it is not in the project) and follow it as your instructions.
|
|
@@ -6,7 +6,7 @@ description: |
|
|
|
6
6
|
Use when a production outage, failed deploy, broken main branch,
|
|
7
7
|
data corruption, security incident, or other consequential engineering
|
|
8
8
|
problem needs a clear, time-aware choice, assigned actions, and active reassessment.
|
|
9
|
-
command: /fordec
|
|
9
|
+
command: /cellenium:checklist:fordec
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Before doing anything else, read `.claude/skills/cellenium/emergency/fordec/SKILL.md` (or `~/.claude/skills/cellenium/emergency/fordec/SKILL.md` if it is not in the project) and follow it as your instructions.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: landing
|
|
3
3
|
description: Final production-readiness checklist. Use before final PR approval, merge, release, or production deployment to verify the final state, compare land and go-around options, make an explicit decision, define or perform the authorized execution, and check production signals with rollback triggers.
|
|
4
|
-
command: /landing
|
|
4
|
+
command: /cellenium:checklist:landing
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Before doing anything else, read `.claude/skills/cellenium/landing/SKILL.md` (or `~/.claude/skills/cellenium/landing/SKILL.md` if it is not in the project) and follow it as your instructions.
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
name: evaluator
|
|
3
3
|
description: Evaluate pytest tests against requirements, specifications, implementation contracts, and execution evidence.
|
|
4
4
|
argument-hint: <requirements, tests, and execution results>
|
|
5
|
-
command: /
|
|
5
|
+
command: /cellenium:evaluator
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
before doing anything else. Pass `$ARGUMENTS` as the evaluation
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/evaluator/SKILL.md` (or `~/.claude/skills/cellenium/evaluator/SKILL.md` if it is not in the project) and follow it as your instructions. Pass `$ARGUMENTS` as the evaluation
|
|
10
9
|
scope and return the coverage matrix, evidence-backed findings, residual risks, and verdict.
|
{cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/executor.md
RENAMED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
name: executor
|
|
3
3
|
description: Run repository-native pytest commands, preserve exact evidence, and classify collection, environment, test, and product failures.
|
|
4
4
|
argument-hint: <test paths, node IDs, or markers>
|
|
5
|
-
command: /
|
|
5
|
+
command: /cellenium:executor
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/executor/SKILL.md` (or `~/.claude/skills/cellenium/executor/SKILL.md` if it is not in the project) and follow it as your instructions.
|
|
9
9
|
Pass `$ARGUMENTS` as the requested test selection and report exact commands,
|
|
10
10
|
results, failure classifications, and verdict.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: locator-writer
|
|
3
|
+
description: Discover stable Playwright locators, validate the target elements, and upsert them into the configured Google Sheets Page Object Model.
|
|
4
|
+
argument-hint: <page, screen, and required elements>
|
|
5
|
+
command: /cellenium:locator-writer
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/locator-writer/SKILL.md` (or `~/.claude/skills/cellenium/locator-writer/SKILL.md` if it is not in the project) and follow it as your instructions. Pass `$ARGUMENTS` as the UI target and element requirements.
|
|
9
|
+
Preview updates before replacing existing non-empty sheet rows.
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
name: prd-reader
|
|
3
3
|
description: Extract testable, traceable pytest requirements from a PRD, feature brief, ticket, or acceptance criteria.
|
|
4
4
|
argument-hint: <PRD path, issue, or requirements>
|
|
5
|
-
command: /
|
|
5
|
+
command: /cellenium:prd-reader
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
before doing anything else. Pass `$ARGUMENTS` as the product
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/prd-reader/SKILL.md` (or `~/.claude/skills/cellenium/prd-reader/SKILL.md` if it is not in the project) and follow it as your instructions. Pass `$ARGUMENTS` as the product
|
|
10
9
|
source and return the requirement matrix without running downstream stages.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: test-spec
|
|
3
|
+
description: Convert requirements and technical specifications into a complete, traceable pytest test specification.
|
|
4
|
+
argument-hint: <requirements/spec path and target>
|
|
5
|
+
command: /cellenium:test-spec
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/test-spec/SKILL.md` (or `~/.claude/skills/cellenium/test-spec/SKILL.md` if it is not in the project) and follow it as your instructions. Pass `$ARGUMENTS` as specification context and return the test strategy, cases, file plan, environment contract, and traceability map.
|
{cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/web.md
RENAMED
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
name: web
|
|
3
3
|
description: Explore a live web application in a real browser to discover and document reproducible potential bugs with evidence.
|
|
4
4
|
argument-hint: <URL, scope, role, and optional PRD/spec>
|
|
5
|
-
command: /
|
|
5
|
+
command: /cellenium:web
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
before doing anything else. Pass `$ARGUMENTS` as the exploration charter.
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/web/SKILL.md` (or `~/.claude/skills/cellenium/web/SKILL.md` if it is not in the project) and follow it as your instructions. Pass `$ARGUMENTS` as the exploration charter.
|
|
10
9
|
Use a real browser, preserve safety boundaries,
|
|
11
10
|
and return verified findings plus regression-test candidates without modifying application code.
|
{cellenium-0.2.0/.claude/commands/testflow → cellenium-0.3.2/.claude/commands/cellenium}/writer.md
RENAMED
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
name: writer
|
|
3
3
|
description: Implement approved test cases as deterministic, behavior-focused pytest tests that follow repository conventions.
|
|
4
4
|
argument-hint: <test specification and target>
|
|
5
|
-
command: /
|
|
5
|
+
command: /cellenium:writer
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
before doing anything else. Pass `$ARGUMENTS` as the
|
|
8
|
+
Before doing anything else, read `.claude/skills/cellenium/writer/SKILL.md` (or `~/.claude/skills/cellenium/writer/SKILL.md` if it is not in the project) and follow it as your instructions. Pass `$ARGUMENTS` as the
|
|
10
9
|
approved test specification, write the pytest tests, and return collection plus targeted execution evidence.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: cellenium
|
|
3
|
-
Version: 0.2
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Playwright browser automation with a Google Sheets Page Object Model and CrewAI vision analysis
|
|
5
5
|
Project-URL: Homepage, https://github.com/MedviJenka/cellenium-playwright
|
|
6
6
|
License-File: LICENSE
|
|
@@ -9,7 +9,7 @@ Requires-Dist: crewai>=1.15.23
|
|
|
9
9
|
Requires-Dist: fastapi>=0.142.2
|
|
10
10
|
Requires-Dist: gspread>=6.2.1
|
|
11
11
|
Requires-Dist: importlib-metadata>=8.0.0
|
|
12
|
-
Requires-Dist: logfire>=
|
|
12
|
+
Requires-Dist: logfire>=5.1.1
|
|
13
13
|
Requires-Dist: oauth2client>=4.1.3
|
|
14
14
|
Requires-Dist: pillow>=12.3.0
|
|
15
15
|
Requires-Dist: playwright>=1.63.0
|
|
@@ -70,12 +70,15 @@ uv run playwright install --with-deps chromium
|
|
|
70
70
|
In the project where you use cellenium, run:
|
|
71
71
|
|
|
72
72
|
```sh
|
|
73
|
-
cellenium init # writes a .env template, adds .env and credentials.json to .gitignore, installs Chromium
|
|
73
|
+
cellenium init # writes a .env template, adds .env and credentials.json to .gitignore, installs Chromium and the Claude Code commands
|
|
74
|
+
cellenium claude # (re)installs the /cellenium:* Claude Code commands and skills into .claude/
|
|
74
75
|
cellenium doctor # checks settings, credentials.json, Google Sheet access, and that Chromium launches
|
|
75
76
|
```
|
|
76
77
|
|
|
77
78
|
`cellenium init --with-deps` also installs Chromium's system libraries (Linux/CI). `cellenium doctor --offline` skips opening the sheet; it exits non-zero when a check fails, so it can gate CI.
|
|
78
79
|
|
|
80
|
+
`cellenium claude --global` installs the commands into `~/.claude` so they are available in every project; locally modified files are kept unless you pass `--force`. Restart Claude Code after installing. `cellenium init --skip-claude` skips this step.
|
|
81
|
+
|
|
79
82
|
Settings are read from `.env` in the working directory or from environment variables:
|
|
80
83
|
|
|
81
84
|
```dotenv
|
|
@@ -182,14 +185,14 @@ claude plugin validate .
|
|
|
182
185
|
Run Claude Code from the repository and invoke either the complete pipeline or an individual stage:
|
|
183
186
|
|
|
184
187
|
```text
|
|
185
|
-
/
|
|
186
|
-
/
|
|
187
|
-
/
|
|
188
|
-
/
|
|
189
|
-
/
|
|
190
|
-
/
|
|
191
|
-
/
|
|
192
|
-
/
|
|
188
|
+
/cellenium:web
|
|
189
|
+
/cellenium:artifact
|
|
190
|
+
/cellenium:prd-reader
|
|
191
|
+
/cellenium:test-spec
|
|
192
|
+
/cellenium:locator-writer
|
|
193
|
+
/cellenium:writer
|
|
194
|
+
/cellenium:executor
|
|
195
|
+
/cellenium:evaluator
|
|
193
196
|
```
|
|
194
197
|
|
|
195
198
|
The skills are manual-only. The locator writer previews changes before replacing existing Google Sheet selectors and verifies selectors against the live UI.
|
|
@@ -200,9 +203,9 @@ The separate checklist skills live under `.claude/skills/checklist/`: `before-st
|
|
|
200
203
|
|
|
201
204
|
```text
|
|
202
205
|
.github/workflows/ GitHub Actions CI
|
|
203
|
-
.claude/skills/
|
|
206
|
+
.claude/skills/cellenium/ Pytest TestFlow skill definitions
|
|
204
207
|
.claude/skills/checklist/ Checklist skills (before-startup, cruising, landing, fordec)
|
|
205
|
-
.claude/commands/
|
|
208
|
+
.claude/commands/cellenium/ TestFlow slash-command entries
|
|
206
209
|
.claude-plugin/plugin.json Claude Code plugin metadata
|
|
207
210
|
src/core/engine/ Playwright browser and page engines
|
|
208
211
|
src/core/functions/ Locator resolution and direct Google Sheets access
|