Compare commits

...

8 Commits

Author SHA1 Message Date
cheliangzhao
c0f1574e47 docs: remove generic skills search section from Quick Deploy 2026-02-11 10:21:21 +08:00
cheliangzhao
b7ebfea749 docs: rename README title to AI Agent Skills 2026-02-11 10:20:17 +08:00
cheliangzhao
172531e473 docs: add version sync rule to AGENTS.md and sync README to v1.0.1 2026-02-11 10:13:52 +08:00
cheliangzhao
0b6a0eff34 feat: add module discovery and build output path documentation 2026-02-11 10:11:59 +08:00
cheliangzhao
61fa472a88 docs: add version 1.0.0 badge, CHANGELOG, and changelog maintenance rule 2026-02-10 21:14:49 +08:00
cheliangzhao
5ee63b901a docs: simplify AGENTS.md by removing git workflow examples 2026-02-10 21:12:49 +08:00
cheliangzhao
19125ca794 docs: add README maintenance guidelines to AGENTS.md
- Add clear rules for when to update README
- Add checklist for documentation updates
- Include workflow for pushing to both remotes (origin + gitea)
- Distinguish between changes that require README updates vs those that don't
2026-02-10 21:12:13 +08:00
cheliangzhao
87993a5a2c docs: update README with State Management V2 and new files
- Add state-management-v2.md and state-management-v2-examples.ets to file tree
- Update arkts-development coverage to include V2 decorators
- Add mention of code obfuscation, linting, and debugging tools
2026-02-10 21:08:52 +08:00
4 changed files with 182 additions and 10 deletions

View File

@@ -195,3 +195,34 @@ description: ... # Detailed description for agent matching
- Use **fenced code blocks** with language specifiers (`typescript`, `bash`).
- Structure content as: Quick Reference first, then detailed sections.
- Cross-reference related skills and reference files by relative path.
## Maintaining Documentation
### When to Update README.md
**ALWAYS check and update README.md after making changes to the repository.**
Update README when:
-**Adding/removing files** - Update the repository structure section
-**Adding new features/sections** - Update the "Covers" section of relevant skills
-**Modifying project structure** - Update the file tree diagram
-**Adding new skill directories** - Add to the "Available Skills" section
Do NOT update README for:
- ❌ Bug fixes that don't change functionality
- ❌ Content improvements that don't add new features
- ❌ Wording/typo corrections
- ❌ Internal refactoring without user-visible changes
### Update Checklist
When making changes, follow this checklist:
1. Make your changes to skill files
2. **Check**: Did I add/remove files? → Update file tree in README
3. **Check**: Did I add new functionality? → Update "Covers" section in README
4. Update README.md if needed
5. **ALWAYS** update CHANGELOG.md with a summary of changes for every commit
6. **ALWAYS** sync the version badge in README.md when CHANGELOG.md version changes

33
CHANGELOG.md Normal file
View File

@@ -0,0 +1,33 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
## [1.0.1] - 2026-02-11
### Added
- **harmonyos-build-deploy**: Finding Modules section (module definitions in build-profile.json5, module type identification)
- **harmonyos-build-deploy**: Finding Module Build Outputs section (output paths, signed/unsigned artifacts, search commands)
## [1.0.0] - 2026-02-10
### Added
- **arkts-development** skill
- ArkUI declarative UI framework guide
- State management V1 decorators (@State, @Prop, @Link, @Provide/@Consume, @Observed/@ObjectLink)
- State management V2 decorators (@ComponentV2, @Local, @Param, @Event, @ObservedV2, @Trace, @Computed, @Monitor, @Provider/@Consumer)
- Component lifecycle and navigation (router)
- Network requests (http) and local storage (preferences)
- TypeScript to ArkTS migration guide
- Code templates: component-template.ets, list-page-template.ets, state-management-v2-examples.ets
- Reference docs: API reference, component patterns, ArkGuard obfuscation, CodeLinter, hstack, hvigorw command-line
- **harmonyos-build-deploy** skill
- hvigorw build commands (assembleApp, assembleHap, assembleHsp, assembleHar)
- ohpm dependency management
- hdc device installation and management
- Troubleshooting common build/deploy errors
- Device installation reference guide
- **AGENTS.md** with coding conventions and documentation guidelines

View File

@@ -1,4 +1,6 @@
# AI Skills - HarmonyOS/ArkTS Development
# AI Agent Skills - HarmonyOS/ArkTS Development
[![Version](https://img.shields.io/badge/version-1.0.1-blue.svg)](CHANGELOG.md)
AI coding agent skills for HarmonyOS/ArkTS application development.
@@ -18,10 +20,11 @@ ArkTS/ArkUI development for HarmonyOS applications.
**Covers:**
- ArkUI declarative UI framework
- State management decorators (@State, @Prop, @Link)
- State management V1 (@State, @Prop, @Link) and V2 (@Local, @Param, @Event, @ObservedV2, @Trace)
- Component lifecycle and navigation
- Network requests and local storage
- TypeScript to ArkTS migration
- Code obfuscation, linting, and debugging tools
### harmonyos-build-deploy
@@ -52,12 +55,6 @@ npx skills add https://github.com/FadingLight9291117/arkts_skills --skill harmon
npx skills add https://github.com/FadingLight9291117/arkts_skills --skill arkts-development
```
Or search for skills on [skills.sh](https://skills.sh/) and run the corresponding install command:
```bash
npx skills add <owner/repo>
```
Once installed, the skill is automatically configured for your AI agent (supports Cursor, Claude Code, Copilot, and other major agents).
> No additional CLI installation required — `npx` downloads and runs it automatically. To disable anonymous telemetry, set the environment variable `DISABLE_TELEMETRY=1`.
@@ -75,12 +72,14 @@ These skills are automatically loaded by the AI agent when relevant tasks are de
```
AGENTS.md # Guidelines for AI agents
CHANGELOG.md # Version history
README.md # This file
arkts-development/
├── SKILL.md
├── assets/
│ ├── component-template.ets
── list-page-template.ets
── list-page-template.ets
│ └── state-management-v2-examples.ets
└── references/
├── api-reference.md
├── arkguard-obfuscation.md
@@ -88,7 +87,8 @@ arkts-development/
├── component-patterns.md
├── hstack.md
├── hvigor-commandline.md
── migration-guide.md
── migration-guide.md
└── state-management-v2.md
harmonyos-build-deploy/
├── SKILL.md
└── references/

View File

@@ -248,6 +248,114 @@ outputs/
| HAR | `.har` | Harmony Archive - Static library (compiled into HAP) |
| APP | `.app` | Complete application bundle (all HAP + HSP) |
## Finding Modules
All modules are defined in `build-profile.json5` at the project root, in the `modules` array.
### Module Definition Structure
```json5
{
"modules": [
{
"name": "entry", // Module name (used in build commands)
"srcPath": "./entry", // Module source path (relative to project root)
"targets": [ // Build target config (optional)
{
"name": "default",
"applyToProducts": ["default", "app_store"]
}
]
},
{
"name": "support_http",
"srcPath": "./support/support_http",
"targets": [...]
}
]
}
```
### Key Fields
| Field | Description |
|-------|-------------|
| `name` | Module name, used in build commands (e.g., `-p module=entry@default`) |
| `srcPath` | Module source path relative to project root |
| `targets` | Build target config, specifies which products this module applies to |
### Module Type Identification
| Characteristic | Module Type |
|----------------|-------------|
| Has `targets` and `name` is `entry` | **HAP** (Application entry) |
| Has `targets` config | **HSP** (Dynamic shared package) |
| No `targets` config | **HAR** (Static library, compiled into other modules) |
### Quick Commands
```bash
# Read build-profile.json5 to find all modules
cat build-profile.json5
# Extract module names and paths (grep)
grep -E '"name"|"srcPath"' build-profile.json5
```
## Finding Module Build Outputs
Module build outputs are located at:
```
{srcPath}/build/default/outputs/default/
```
**Note:** Debug and Release builds output to the same directory. The difference is in the signing configuration used (defined in `build-profile.json5``signingConfigs`).
### Output Files
| File | Description |
|------|-------------|
| `{name}-default-signed.hsp` | **Signed HSP** (ready for installation) |
| `{name}-default-unsigned.hsp` | Unsigned HSP |
| `{name}.har` | HAR static library |
| `app/{name}-default.hsp` | Intermediate artifact |
| `mapping/sourceMaps.map` | Source maps for debugging |
### Example
For module `support_http` with `srcPath: "./support/support_http"`:
```
support/support_http/build/default/outputs/default/
├── support_http-default-signed.hsp ← Signed, ready to install
├── support_http-default-unsigned.hsp
├── support_http.har
├── app/
│ └── support_http-default.hsp
├── mapping/
│ └── sourceMaps.map
└── pack.info
```
### Search Commands
```bash
# Find all signed HSP/HAP outputs
dir /s /b "*-signed.hsp" "*-signed.hap" 2>nul # Windows
find . -name "*-signed.hsp" -o -name "*-signed.hap" # Linux/macOS
# Find specific module's output
dir /s /b "{srcPath}\build\default\outputs\default\*" # Windows
ls -la {srcPath}/build/default/outputs/default/ # Linux/macOS
```
### Notes
1. **Build required**: If `build/` directory doesn't exist, run build first
2. **Project-level outputs**: Complete app bundle is in project root `outputs/` after `assembleApp`
3. **oh_modules outputs**: Dependency modules may have outputs in `oh_modules/@xxx/build/...` (these are resolved dependencies)
## Unwanted Modules in Output Directory
Sometimes HSP files appear in the output directory that are **not listed in `build-profile.json5`**. These modules should not be deployed.