petchat-standard

Enforce PetChat PyQt6 client-server architecture and TCP protocol standards.

3|Updated Dec 20, 2025
One-click install
npx skills add https://github.com/Xustalis/petchat --skill petchat-standard
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: petchat-standard
Source: https://github.com/Xustalis/petchat/tree/main
Command: npx skills add https://github.com/Xustalis/petchat --skill petchat-standard

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill reduces costly integration mistakes by enforcing PetChat’s client-server architecture, protocol rules, clean-code conventions, and mandatory verification steps before changes are considered complete.

Core Features & Use Cases

  • Architecture guardrails: Keeps heavy logic (AI and heavy DB operations) on the server while making the PyQt6 client UI “dumb,” preserving the Client-Server design.
  • Protocol safety: Protects the TCP message protocol by requiring that the fixed header and routing workflow stay consistent when adding features.
  • Clean-code standards: Enforces type hints for all function signatures and forbids inline “what” comments to keep code readable and consistent.
  • Threading correctness for PyQt6: Requires background threads for network/DB I/O and strictly uses pyqtSignal for main-thread UI updates.
  • Testing & verification workflow (critical): Makes network/protocol, server logic, and concurrency/stress verification part of the definition of done.

Quick Start

Ask an AI assistant to implement your change in PetChat while following the constraints in petchat-standard, then run tests/network_test.py, tests/verify_cs_server.py, and tests/stress_test.py to confirm it is production-safe.

Frequently Asked Questions about petchat-standard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I maintain PyQt6 threading rules when adding network features to a client-server app?

To maintain PyQt6 threading rules, use background threads for network and database I/O and strictly use pyqtSignal to emit updates to the main thread. This prevents UI freezes and preserves client-server architecture integrity during feature integration.

What testing workflow is needed to verify TCP socket protocol changes in a Python server?

Verifying TCP socket protocol changes requires running network tests, server logic tests, and concurrency stress tests. This mandatory verification workflow ensures fixed header integrity and confirms that routing workflows remain production-safe under multi-user scenarios.

How do I enforce clean code standards and type hints in a PyQt6 and socket server project?

Enforce clean code standards by requiring type hints for all function signatures and forbidding inline comments that describe what the code does. This keeps the PyQt6 client and socket server code readable and architecturally consistent.

Does adding AI request handling features require keeping the PyQt6 client UI dumb?

Yes, adding AI request handling requires keeping the PyQt6 client UI dumb. The client-server design mandates that heavy logic and AI operations remain on the server side to prevent architecture regressions and maintain system scalability.

Why do my PyQt6 client-server app features break during multi-user stress testing?

PyQt6 client-server app features break during multi-user stress testing due to protocol regressions or threading violations. Enforcing TCP fixed header consistency and using pyqtSignal for main-thread UI updates prevents these concurrency and integration failures.