Hermes-style CLI agent that finds outdated Uzbekistan websites and runs deep upgrade analysis (Grok/GPT/Claude/Gemini)
Project description
Old Website Finder Agent (owf)
Hermes-uslubidagi professional CLI agent — O‘zbekiston ichidagi eskirgan veb-saytlarni topadi, deep analysis qiladi, multi-provider LLM orqali tashxis qo‘yadi.
Install (public)
# PyPI (nom publish qilingandan keyin)
pip install old-website-finder
# yoki pipx (tavsiya — global CLI)
pipx install old-website-finder
# yoki to‘g‘ridan-to‘g‘ri GitHubdan
pip install git+https://github.com/FarrukhDevloper/owf/OldWebsiteFinder.git
owf --version
owf setup
owf daily
Batafsil: PUBLISH.md
owf # banner + status
owf setup # interaktiv sozlash
owf auth add grok # API key yoki OAuth
owf daily # kunlik skan + analysis
Imkoniyatlar
| Modul | Buyruqlar |
|---|---|
| Setup | owf setup, owf doctor, owf status |
| Auth pool | owf auth add/list/remove/status/logout |
| Model | owf model, owf providers, owf config |
| Agent | owf daily, owf analyze, owf schedule |
| Tarix | owf history, owf show, owf runs |
Multi-provider LLM
| Provider | ID | Auth |
|---|---|---|
| xAI / Grok | grok |
API key + OAuth token |
| OpenAI / GPT | openai |
API key + OAuth token |
| Anthropic / Claude | claude |
API key + OAuth token |
| Google / Gemini | gemini |
API key + OAuth token |
| Custom OpenAI-compat | custom |
API key + base URL |
Credentiallar: ~/.owf/auth.json (Hermes-style pool)
Config: ~/.owf/config.yaml
OAuth haqida: CLI brauzerni ochadi va access token / API key ni xavfsiz saqlaydi.
ChatGPT Pro yoki Claude.ai consumer session OAuth rasmiy third-party client talab qiladi — shuning uchun bu yerda API key + Bearer OAuth token modeli ishlatiladi (Hermesauth addUX).
O‘rnatish
cd "C:\New projects\Agents\OldWebsiteFinder"
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
pip install -e .
Tezkor start (Hermes kabi)
owf setup
# yoki
owf auth add grok
owf auth add openai --api-key sk-...
owf auth add claude --type oauth
owf auth add gemini
owf model
owf status
owf doctor
owf daily -n 3
owf analyze https://example.uz --provider claude
Auth misollar
# Interaktiv (brauzer ochiladi)
owf auth add grok
owf auth add openai
owf auth add claude
owf auth add gemini
# Non-interactive
owf auth add grok --api-key xai-...
owf auth add openai --api-key sk-...
owf auth add claude --api-key sk-ant-...
owf auth add gemini --api-key AIza...
owf auth add claude --access-token eyJ... --type oauth
owf auth list
owf auth remove grok 1
owf auth logout openai
Model / config
owf model -p grok -m grok-4.5
owf model -p claude -m claude-sonnet-4-20250514
owf config show
owf config set agent.daily_analysis_limit 10
owf config set fallback.providers "openai,claude"
Env orqali ham ishlaydi (pool bo‘sh bo‘lsa):
XAI_API_KEY=
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
GEMINI_API_KEY=
Agent pipeline
- Discovery —
.uzseed +data/seed_sites.txt - Tech scan — HTTPS, eski PHP/jQuery, table layout, CMS, security headers
- Priority score — upgrade ehtiyoj × auditoriya proxy
- Deep analysis — tanlangan LLM (Grok/GPT/Claude/Gemini)
- Persist — SQLite +
reports/YYYY-MM-DD/*.md|json
CLI reference
owf banner + status dashboard
owf setup setup wizard
owf doctor health check
owf status component status
owf providers LLM provider ro‘yxati
owf auth add <provider> credential qo‘shish
owf auth list pool
owf auth remove <p> <ref> o‘chirish
owf auth logout [provider] tozalash
owf model provider/model picker
owf config show|set|edit|path
owf daily [-n N] [-p provider] [-m model]
owf analyze URL
owf history [--date YYYY-MM-DD]
owf show <analysis_id>
owf runs
owf schedule --hour 9
Fayl tuzilmasi
~/.owf/
auth.json # credential pool
config.yaml # model, limits, fallback
.env # optional secrets
reports/ # optional home reports
logs/
src/old_website_finder/
cli.py # Hermes-style commands
ui.py # banner / panels
home.py # ~/.owf
auth/ # providers, store, login
llm/ # multi-provider router
discovery/ # scan + score
analysis/ # deep analysis
pipeline/ # daily orchestrator
Eslatma
- Agent read-only — saytlarni o‘zgartirmaydi.
- Auditoriya bahosi proxy (analytics emas).
- Productionda
data/seed_sites.txtni kengaytiring.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file old_website_finder-1.1.0.tar.gz.
File metadata
- Download URL: old_website_finder-1.1.0.tar.gz
- Upload date:
- Size: 40.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
232ba00d2dc0c172b4f48c92cefc39d56055affa6e36e2dadb139339f708c988
|
|
| MD5 |
adb88cb44d76164c06da996f75c69cdc
|
|
| BLAKE2b-256 |
389496bbfe782a64523c2539e671d70d76e1590f55371f481deb1e1e161d5595
|
File details
Details for the file old_website_finder-1.1.0-py3-none-any.whl.
File metadata
- Download URL: old_website_finder-1.1.0-py3-none-any.whl
- Upload date:
- Size: 44.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc5ac2833c0fe81a9859eb8e9a05404835908800dc55574d9e9459c334632ed4
|
|
| MD5 |
65840331bd3e8f6f99b00472084a6ac6
|
|
| BLAKE2b-256 |
2f13baabcc69cb0b44091624b9ec4b7fada159d8c64b7d441ab4e8f97c9fc4c4
|