251148c3ff
## Summary - add repository-wide quality tooling and verification scaffolding, including CI workflows, pnpm workspace setup, ESLint/Prettier/markdown checks, and generated-output verification helpers - reorganize skill sources and generation flow by introducing canonical `_source` variants, generator/manifests, reusable helper abstractions, and shared web-automation/browser utilities - clean up and expand documentation so the root README flows into docs and skill docs, with clearer development, reviewer, installer, and workflow guidance ## Notable changes - docs flow and consistency cleanup across `README.md`, `docs/README.md`, and related docs - new scripts for `check`, docs verification, generated-file verification, shell portability, and safe directory replacement - refactors in Atlassian and web-automation skill runtimes to reduce duplication and centralize reusable code - changelog, development documentation, and CI surface updates ## Test Plan - [ ] `pnpm run check` - [ ] review generated/manifests and skill sync outputs - [ ] smoke-check docs flow from `README.md` to `docs/README.md` to skill docs ## Notes - this branch currently includes tracked `skills/web-automation/shared/node_modules` content that should be reviewed carefully as potentially noisy/accidental committed artifacts Co-authored-by: Stefano Fiorini <stefano.fiorini@firsthorizon.com> Reviewed-on: #1
37 lines
1.0 KiB
TypeScript
37 lines
1.0 KiB
TypeScript
import { launchPersistentContext } from 'cloakbrowser';
|
|
import { homedir } from 'os';
|
|
import { join } from 'path';
|
|
import { mkdirSync, existsSync } from 'fs';
|
|
|
|
async function test() {
|
|
const profilePath = join(homedir(), '.cloakbrowser-profile');
|
|
if (!existsSync(profilePath)) {
|
|
mkdirSync(profilePath, { recursive: true });
|
|
}
|
|
|
|
console.log('Profile path:', profilePath);
|
|
console.log('Launching CloakBrowser with full options...');
|
|
|
|
const browser = await launchPersistentContext({
|
|
headless: true,
|
|
userDataDir: profilePath,
|
|
humanize: true,
|
|
});
|
|
|
|
console.log('Browser launched');
|
|
const page = browser.pages()[0] || await browser.newPage();
|
|
console.log('Page created');
|
|
|
|
await page.goto('https://github.com', { timeout: 30000 });
|
|
console.log('Navigated to:', page.url());
|
|
console.log('Title:', await page.title());
|
|
|
|
await page.screenshot({ path: '/tmp/github-test.png' });
|
|
console.log('Screenshot saved');
|
|
|
|
await browser.close();
|
|
console.log('Done');
|
|
}
|
|
|
|
test().catch(console.error);
|