@maccesar/titools 2.0.7 → 2.2.0
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.
- package/{AGENTS-TEMPLATE.md → AGENTS-VERCEL-RESEARCH.md} +16 -18
- package/README.md +250 -168
- package/agents/{ti-researcher.md → ti-pro.md} +10 -10
- package/bin/titools.js +16 -12
- package/lib/cleanup.js +95 -0
- package/lib/commands/agents.js +146 -70
- package/lib/commands/skills.js +349 -0
- package/lib/commands/uninstall.js +189 -154
- package/lib/commands/update.js +104 -21
- package/lib/config.js +26 -20
- package/lib/downloader.js +1 -1
- package/lib/installer.js +37 -97
- package/lib/platform.js +9 -5
- package/lib/prompts/checkboxCancel.js +264 -0
- package/lib/prompts/selectCancel.js +204 -0
- package/lib/symlink.js +19 -7
- package/lib/utils.js +17 -17
- package/package.json +10 -10
- package/skills/alloy-guides/SKILL.md +8 -30
- package/skills/alloy-guides/references/CLI_TASKS.md +14 -24
- package/skills/alloy-guides/references/CONCEPTS.md +5 -25
- package/skills/alloy-guides/references/CONTROLLERS.md +2 -19
- package/skills/alloy-guides/references/MODELS.md +40 -10
- package/skills/alloy-guides/references/PURGETSS.md +1 -11
- package/skills/alloy-guides/references/VIEWS_DYNAMIC.md +8 -14
- package/skills/alloy-guides/references/VIEWS_STYLES.md +14 -25
- package/skills/alloy-guides/references/VIEWS_WITHOUT_CONTROLLERS.md +2 -8
- package/skills/alloy-guides/references/VIEWS_XML.md +29 -40
- package/skills/alloy-guides/references/WIDGETS.md +1 -17
- package/skills/alloy-howtos/SKILL.md +1 -22
- package/skills/alloy-howtos/references/best_practices.md +0 -17
- package/skills/alloy-howtos/references/cli_reference.md +1 -23
- package/skills/alloy-howtos/references/config_files.md +86 -15
- package/skills/alloy-howtos/references/custom_tags.md +14 -13
- package/skills/alloy-howtos/references/debugging_troubleshooting.md +3 -22
- package/skills/alloy-howtos/references/samples.md +4 -14
- package/skills/purgetss/SKILL.md +11 -37
- package/skills/purgetss/references/EXAMPLES.md +106 -17
- package/skills/purgetss/references/animation-system.md +0 -67
- package/skills/purgetss/references/apply-directive.md +0 -18
- package/skills/purgetss/references/arbitrary-values.md +0 -25
- package/skills/purgetss/references/class-index.md +0 -46
- package/skills/purgetss/references/cli-commands.md +0 -41
- package/skills/purgetss/references/configurable-properties.md +0 -55
- package/skills/purgetss/references/custom-rules.md +0 -14
- package/skills/purgetss/references/customization-deep-dive.md +0 -49
- package/skills/purgetss/references/dynamic-component-creation.md +56 -37
- package/skills/purgetss/references/grid-layout.md +0 -32
- package/skills/purgetss/references/icon-fonts.md +0 -50
- package/skills/purgetss/references/installation-setup.md +61 -32
- package/skills/purgetss/references/migration-guide.md +127 -0
- package/skills/purgetss/references/opacity-modifier.md +0 -34
- package/skills/purgetss/references/performance-tips.md +261 -0
- package/skills/purgetss/references/platform-modifiers.md +0 -46
- package/skills/purgetss/references/smart-mappings.md +0 -12
- package/skills/purgetss/references/tikit-components.md +393 -0
- package/skills/purgetss/references/titanium-resets.md +1 -27
- package/skills/purgetss/references/ui-ux-design.md +467 -117
- package/skills/{alloy-expert → ti-expert}/SKILL.md +45 -54
- package/skills/ti-expert/references/alloy-builtins.md +387 -0
- package/skills/{alloy-expert → ti-expert}/references/alloy-structure.md +147 -40
- package/skills/ti-expert/references/anti-patterns.md +90 -0
- package/skills/ti-expert/references/cli-expert.md +109 -0
- package/skills/{alloy-expert → ti-expert}/references/code-conventions.md +182 -49
- package/skills/{alloy-expert → ti-expert}/references/controller-patterns.md +103 -93
- package/skills/{alloy-expert → ti-expert}/references/error-handling.md +12 -12
- package/skills/{alloy-expert → ti-expert}/references/examples.md +144 -85
- package/skills/{alloy-expert → ti-expert}/references/migration-patterns.md +38 -36
- package/skills/{alloy-expert → ti-expert}/references/patterns.md +8 -8
- package/skills/ti-expert/references/performance-listview.md +251 -0
- package/skills/{alloy-expert/references/performance-patterns.md → ti-expert/references/performance-optimization.md} +67 -283
- package/skills/{alloy-expert/references/security-patterns.md → ti-expert/references/security-device.md} +12 -295
- package/skills/ti-expert/references/security-fundamentals.md +284 -0
- package/skills/{alloy-expert → ti-expert}/references/state-management.md +10 -10
- package/skills/ti-expert/references/testing-e2e-ci.md +432 -0
- package/skills/ti-expert/references/testing-unit.md +433 -0
- package/skills/ti-expert/references/theming.md +394 -0
- package/skills/ti-guides/SKILL.md +1 -14
- package/skills/ti-guides/references/advanced-data-and-images.md +126 -10
- package/skills/ti-guides/references/app-distribution.md +48 -10
- package/skills/ti-guides/references/application-frameworks.md +9 -2
- package/skills/ti-guides/references/cli-reference.md +338 -82
- package/skills/ti-guides/references/coding-best-practices.md +14 -4
- package/skills/ti-guides/references/commonjs-advanced.md +103 -6
- package/skills/ti-guides/references/hello-world.md +5 -2
- package/skills/ti-guides/references/hyperloop-native-access.md +439 -46
- package/skills/ti-guides/references/javascript-primer.md +4 -3
- package/skills/ti-guides/references/resources.md +0 -1
- package/skills/ti-guides/references/style-and-conventions.md +57 -9
- package/skills/ti-guides/references/tiapp-config.md +48 -6
- package/skills/ti-howtos/SKILL.md +2 -27
- package/skills/ti-howtos/references/android-platform-deep-dives.md +41 -90
- package/skills/ti-howtos/references/automation-fastlane-appium.md +15 -14
- package/skills/ti-howtos/references/buffer-codec-streams.md +22 -22
- package/skills/ti-howtos/references/cross-platform-development.md +68 -37
- package/skills/ti-howtos/references/debugging-profiling.md +8 -53
- package/skills/ti-howtos/references/extending-titanium.md +12 -51
- package/skills/ti-howtos/references/google-maps-v2.md +30 -29
- package/skills/ti-howtos/references/ios-map-kit.md +19 -25
- package/skills/ti-howtos/references/ios-platform-deep-dives.md +95 -283
- package/skills/ti-howtos/references/local-data-sources.md +45 -37
- package/skills/ti-howtos/references/location-and-maps.md +47 -28
- package/skills/ti-howtos/references/media-apis.md +84 -27
- package/skills/ti-howtos/references/notification-services.md +40 -89
- package/skills/ti-howtos/references/remote-data-sources.md +21 -36
- package/skills/ti-howtos/references/tutorials.md +79 -39
- package/skills/ti-howtos/references/using-modules.md +4 -30
- package/skills/ti-howtos/references/web-content-integration.md +28 -45
- package/skills/ti-howtos/references/webpack-build-pipeline.md +54 -18
- package/skills/ti-ui/SKILL.md +1 -21
- package/skills/ti-ui/references/accessibility-deep-dive.md +71 -25
- package/skills/ti-ui/references/animation-and-matrices.md +0 -47
- package/skills/ti-ui/references/application-structures.md +0 -46
- package/skills/ti-ui/references/custom-fonts-styling.md +9 -57
- package/skills/ti-ui/references/event-handling.md +32 -40
- package/skills/ti-ui/references/gestures.md +0 -40
- package/skills/ti-ui/references/icons-and-splash-screens.md +21 -44
- package/skills/ti-ui/references/layouts-and-positioning.md +47 -39
- package/skills/ti-ui/references/listviews-and-performance.md +187 -73
- package/skills/ti-ui/references/orientation.md +57 -71
- package/skills/ti-ui/references/platform-ui-android.md +114 -48
- package/skills/ti-ui/references/platform-ui-ios.md +63 -38
- package/skills/ti-ui/references/scrolling-views.md +14 -23
- package/skills/ti-ui/references/tableviews.md +6 -56
- package/lib/commands/install.js +0 -188
- package/skills/alloy-expert/references/anti-patterns.md +0 -133
- package/skills/alloy-expert/references/testing.md +0 -872
- package/skills/ti-guides/references/alloy-cli-advanced.md +0 -84
- package/skills/ti-guides/references/alloy-data-mastery.md +0 -29
- package/skills/ti-guides/references/alloy-widgets-and-themes.md +0 -19
- /package/skills/{alloy-expert → ti-expert}/assets/ControllerAutoCleanup.js +0 -0
- /package/skills/{alloy-expert → ti-expert}/references/contracts.md +0 -0
package/README.md
CHANGED
|
@@ -25,13 +25,13 @@ npm install -g @maccesar/titools
|
|
|
25
25
|
This installs the `titools` CLI command globally:
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
# Install
|
|
28
|
+
# Install knowledge packages and platform links
|
|
29
29
|
titools install
|
|
30
30
|
|
|
31
|
-
#
|
|
32
|
-
titools
|
|
31
|
+
# Sync knowledge index files in your project
|
|
32
|
+
titools sync
|
|
33
33
|
|
|
34
|
-
# Update
|
|
34
|
+
# Update knowledge packages and agent (and refresh existing knowledge index files)
|
|
35
35
|
titools update
|
|
36
36
|
|
|
37
37
|
# Show version
|
|
@@ -40,7 +40,7 @@ titools --version
|
|
|
40
40
|
|
|
41
41
|
**What it installs:**
|
|
42
42
|
- ✅ All 7 titanium-* skills
|
|
43
|
-
- ✅ ti-
|
|
43
|
+
- ✅ ti-pro agent
|
|
44
44
|
- ✅ Automatic documentation generation
|
|
45
45
|
|
|
46
46
|
**Why use NPM?**
|
|
@@ -55,10 +55,120 @@ titools --version
|
|
|
55
55
|
|
|
56
56
|
### titools install
|
|
57
57
|
|
|
58
|
-
Installs Titanium
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
58
|
+
Installs Titanium knowledge packages and platform links.
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
titools install [options]
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Options:**
|
|
65
|
+
| Option | Description |
|
|
66
|
+
| --------------- | ------------------------------------------------------------------- |
|
|
67
|
+
| `-l, --local` | Install skills locally in the current project (`./.agents/skills/`) |
|
|
68
|
+
| `-a, --all` | Install to all detected platforms without prompting |
|
|
69
|
+
| `--path <path>` | Install to a custom path (skips symlink setup) |
|
|
70
|
+
|
|
71
|
+
**What it does:**
|
|
72
|
+
- ✅ Installs all 7 titanium-* skills (global or local)
|
|
73
|
+
- ✅ Installs ti-pro agent for Claude Code
|
|
74
|
+
- ✅ Creates symlinks from platform directories to central skills
|
|
75
|
+
- ✅ Detects installed AI platforms and lets you choose which to link
|
|
76
|
+
- ✅ Cleans up legacy artifacts (`alloy-expert` skill, `ti-researcher` agent)
|
|
77
|
+
- ✅ If run inside a Titanium project, prompts to sync knowledge index files
|
|
78
|
+
- ✅ Warns Gemini users if local skills override existing global Gemini skills
|
|
79
|
+
|
|
80
|
+
Run inside a Titanium project to install locally or globally from anywhere.
|
|
81
|
+
|
|
82
|
+
### Recommended Setup Flow
|
|
83
|
+
|
|
84
|
+
Start in a Titanium project so the instruction files can be created/updated:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# 1) Create a Titanium project
|
|
88
|
+
ti create
|
|
89
|
+
|
|
90
|
+
# 2) Enter the project
|
|
91
|
+
cd /path/to/your/project
|
|
92
|
+
|
|
93
|
+
# 3) Install knowledge packages (global or local)
|
|
94
|
+
titools install
|
|
95
|
+
|
|
96
|
+
# 4) Sync knowledge index files (AGENTS.md/CLAUDE.md/GEMINI.md)
|
|
97
|
+
titools sync
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### titools sync
|
|
101
|
+
|
|
102
|
+
Updates the Titanium knowledge index inside your project's instruction files.
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
titools sync [path] [options]
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
**Arguments:**
|
|
109
|
+
| Argument | Description |
|
|
110
|
+
| -------- | -------------------------------------------- |
|
|
111
|
+
| `[path]` | Project path (defaults to current directory) |
|
|
112
|
+
|
|
113
|
+
**Options:**
|
|
114
|
+
| Option | Description |
|
|
115
|
+
| --------------- | ------------------------------------------ |
|
|
116
|
+
| `-f, --force` | Overwrite existing files without prompting |
|
|
117
|
+
| `-v, --verbose` | Show detailed diagnostics |
|
|
118
|
+
|
|
119
|
+
**What it does:**
|
|
120
|
+
- Detects Titanium SDK version from `tiapp.xml`
|
|
121
|
+
- Prompts you to select which files to sync: `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`
|
|
122
|
+
- Inserts or updates a compressed knowledge index block in selected files
|
|
123
|
+
- Removes knowledge blocks from unselected files
|
|
124
|
+
- Creates files if they don't exist
|
|
125
|
+
- Only works inside a Titanium project (requires `tiapp.xml`)
|
|
126
|
+
|
|
127
|
+
### titools update
|
|
128
|
+
|
|
129
|
+
Updates installed knowledge packages and agent to the latest version.
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
titools update [options]
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
**Options:**
|
|
136
|
+
| Option | Description |
|
|
137
|
+
| ------------- | ------------------------------------------ |
|
|
138
|
+
| `-l, --local` | Update local skills in the current project |
|
|
139
|
+
|
|
140
|
+
**What it does:**
|
|
141
|
+
- Checks GitHub for the latest version
|
|
142
|
+
- Downloads and installs updated skills and agents
|
|
143
|
+
- Updates platform symlinks for all detected platforms
|
|
144
|
+
- Cleans up legacy artifacts (`alloy-expert` skill, `ti-researcher` agent)
|
|
145
|
+
- Auto-syncs knowledge index files in Titanium projects
|
|
146
|
+
- If only local **or** global skills exist, updates that location automatically
|
|
147
|
+
- If both exist, prompts you to choose
|
|
148
|
+
|
|
149
|
+
> Note: This updates knowledge packages/agent and refreshes existing knowledge index files, not the CLI binary itself. To update the CLI, use `npm update -g @maccesar/titools`.
|
|
150
|
+
|
|
151
|
+
### titools remove
|
|
152
|
+
|
|
153
|
+
Removes knowledge packages, agents, symlinks, and knowledge index blocks.
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
titools remove [options]
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**Options:**
|
|
160
|
+
| Option | Description |
|
|
161
|
+
| ------------- | -------------------------------------------- |
|
|
162
|
+
| `-l, --local` | Remove local skills from the current project |
|
|
163
|
+
|
|
164
|
+
**What it does:**
|
|
165
|
+
- Detects all installed components (skills, agents, symlinks, knowledge blocks)
|
|
166
|
+
- Prompts you to select what to remove:
|
|
167
|
+
- ti-pro agent for Claude Code
|
|
168
|
+
- Knowledge index blocks from instruction files (`AGENTS.md`, `CLAUDE.md`, `GEMINI.md`)
|
|
169
|
+
- Skills from global (`~/.agents/skills/`) or project directory
|
|
170
|
+
- Platform symlinks from global or project directory
|
|
171
|
+
- Removes both current and legacy artifacts
|
|
62
172
|
|
|
63
173
|
### Verify Installation
|
|
64
174
|
|
|
@@ -67,10 +177,10 @@ Installs Titanium skills and agents globally:
|
|
|
67
177
|
titools --version
|
|
68
178
|
```
|
|
69
179
|
|
|
70
|
-
**Check central location:**
|
|
180
|
+
**Check central location (global install):**
|
|
71
181
|
```bash
|
|
72
182
|
ls ~/.agents/skills/
|
|
73
|
-
# Should show:
|
|
183
|
+
# Should show: ti-expert, purgetss, ti-ui, ti-howtos, ti-guides, alloy-guides, alloy-howtos
|
|
74
184
|
```
|
|
75
185
|
|
|
76
186
|
**Claude Code (skills):**
|
|
@@ -82,7 +192,7 @@ ls -la ~/.claude/skills/
|
|
|
82
192
|
**Claude Code (agents):**
|
|
83
193
|
```bash
|
|
84
194
|
ls -la ~/.claude/agents/
|
|
85
|
-
# Should show: ti-
|
|
195
|
+
# Should show: ti-pro.md
|
|
86
196
|
```
|
|
87
197
|
|
|
88
198
|
**Gemini CLI:**
|
|
@@ -97,69 +207,52 @@ gemini skills list
|
|
|
97
207
|
|
|
98
208
|
---
|
|
99
209
|
|
|
100
|
-
##
|
|
101
|
-
|
|
102
|
-
### ⚠️ Claude Code Users: Use CLAUDE.md
|
|
210
|
+
## Knowledge Index: Boost AI Performance
|
|
103
211
|
|
|
104
|
-
**
|
|
212
|
+
**File selection per assistant:**
|
|
213
|
+
- Claude Code → `CLAUDE.md`
|
|
214
|
+
- Gemini CLI → `GEMINI.md`
|
|
215
|
+
- Codex CLI / others → `AGENTS.md`
|
|
105
216
|
|
|
106
|
-
|
|
217
|
+
Run this inside your Titanium project:
|
|
107
218
|
|
|
108
219
|
```bash
|
|
109
220
|
cd /path/to/your/titanium/project
|
|
110
|
-
titools
|
|
111
|
-
|
|
112
|
-
# The command will ask:
|
|
113
|
-
# Which AI assistant are you using?
|
|
114
|
-
# 1) Claude Code (creates CLAUDE.md)
|
|
115
|
-
# 2) Gemini CLI (creates GEMINI.md)
|
|
116
|
-
# 3) Cursor/Copilot (creates AGENTS.md)
|
|
221
|
+
titools sync
|
|
117
222
|
```
|
|
118
223
|
|
|
119
|
-
The content is identical - only the filename differs per AI assistant.
|
|
120
|
-
|
|
121
224
|
---
|
|
122
225
|
|
|
123
|
-
### How
|
|
226
|
+
### How the Knowledge Index Works
|
|
124
227
|
|
|
125
|
-
| Approach
|
|
126
|
-
|
|
|
127
|
-
| No documentation
|
|
128
|
-
| Skills only
|
|
129
|
-
| **
|
|
228
|
+
| Approach | Reported Pass Rate |
|
|
229
|
+
| ------------------- | ------------------ |
|
|
230
|
+
| No documentation | 53% |
|
|
231
|
+
| Skills only | 53-79% |
|
|
232
|
+
| **Knowledge index** | **100%** |
|
|
130
233
|
|
|
131
|
-
**Why it works:**
|
|
234
|
+
**Why it works (per Vercel’s evaluation):**
|
|
132
235
|
- **No decision point** - Information is always present, no need to invoke skills
|
|
133
236
|
- **Consistent availability** - Available in every turn, not async-loaded
|
|
134
237
|
- **No ordering issues** - No "read docs first vs explore project first" dilemma
|
|
135
238
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
After installing titools, add AGENTS.md to your Titanium project:
|
|
239
|
+
For details, see `AGENTS-VERCEL-RESEARCH.md`.
|
|
139
240
|
|
|
140
|
-
|
|
141
|
-
cd /path/to/your/titanium/project
|
|
241
|
+
### How to Sync the Knowledge Index
|
|
142
242
|
|
|
143
|
-
|
|
144
|
-
titools agents
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
The `titools agents` command will:
|
|
243
|
+
The `titools sync` command will:
|
|
148
244
|
1. Verify this is a Titanium project (checks for `tiapp.xml`)
|
|
149
245
|
2. Detect your Titanium SDK version
|
|
150
|
-
3.
|
|
246
|
+
3. Update `AGENTS.md`/`CLAUDE.md`/`GEMINI.md` with a compressed knowledge index
|
|
151
247
|
4. Intelligently merge if file already exists (removes old block, adds new one)
|
|
152
248
|
|
|
153
|
-
**
|
|
154
|
-
- CLAUDE.md has highest priority (Claude Code users)
|
|
155
|
-
- GEMINI.md has medium priority (Gemini CLI users)
|
|
156
|
-
- AGENTS.md has lowest priority (Cursor/Copilot users)
|
|
249
|
+
**Selection behavior:** The command lets you choose which instruction files to sync and preselects any files that already contain a knowledge block.
|
|
157
250
|
|
|
158
|
-
### What
|
|
251
|
+
### What the Knowledge Index Contains
|
|
159
252
|
|
|
160
253
|
```
|
|
161
254
|
[Titanium SDK Docs Index]|root: ~/.agents/skills
|
|
162
|
-
|
|
|
255
|
+
|ti-expert/references:{alloy-structure.md,anti-patterns.md,...}
|
|
163
256
|
|purgetss/references:{animation-system.md,class-index.md,...}
|
|
164
257
|
|ti-ui/references:{layouts-and-positioning.md,listviews-and-performance.md,...}
|
|
165
258
|
...
|
|
@@ -169,11 +262,11 @@ The index points to all reference documentation, so your AI assistant can quickl
|
|
|
169
262
|
|
|
170
263
|
### Version Notice
|
|
171
264
|
|
|
172
|
-
|
|
265
|
+
The knowledge index is based on the **latest Titanium SDK documentation**. If your project uses an older version, the command will detect and warn you about potential API differences.
|
|
173
266
|
|
|
174
267
|
---
|
|
175
268
|
|
|
176
|
-
## How to Use
|
|
269
|
+
## How to Use the Knowledge Index
|
|
177
270
|
|
|
178
271
|
Once installed, the AI assistant automatically reads the documentation index in every conversation. Just ask natural questions about Titanium development:
|
|
179
272
|
|
|
@@ -182,46 +275,46 @@ Once installed, the AI assistant automatically reads the documentation index in
|
|
|
182
275
|
**General Architecture:**
|
|
183
276
|
```
|
|
184
277
|
"How should I structure a new Alloy app with authentication?"
|
|
185
|
-
"What
|
|
278
|
+
"What’s a solid pattern for navigation between screens?"
|
|
186
279
|
```
|
|
187
280
|
|
|
188
281
|
**PurgeTSS Styling:**
|
|
189
282
|
```
|
|
190
|
-
"
|
|
191
|
-
"How do I use the 12
|
|
192
|
-
"
|
|
283
|
+
"Can you create a product card with PurgeTSS (image, title, price, buy button)?"
|
|
284
|
+
"How do I use the 12‑column grid system in PurgeTSS?"
|
|
285
|
+
"Explain why my build fails with platform‑specific properties."
|
|
193
286
|
```
|
|
194
287
|
|
|
195
288
|
**UI Components:**
|
|
196
289
|
```
|
|
197
|
-
"
|
|
198
|
-
"Implement pull
|
|
290
|
+
"How do I build a high‑performance ListView with custom templates?"
|
|
291
|
+
"Implement pull‑to‑refresh on a ScrollView."
|
|
199
292
|
```
|
|
200
293
|
|
|
201
294
|
**Native Features:**
|
|
202
295
|
```
|
|
203
|
-
"
|
|
204
|
-
"
|
|
296
|
+
"How do I implement push notifications for iOS and Android?"
|
|
297
|
+
"Handle GPS location in the background."
|
|
205
298
|
```
|
|
206
299
|
|
|
207
300
|
**Debugging:**
|
|
208
301
|
```
|
|
209
302
|
"Why is my ListView scrolling poorly?"
|
|
210
|
-
"
|
|
303
|
+
"Fix “Alloy is not defined” in my lib file."
|
|
211
304
|
```
|
|
212
305
|
|
|
213
306
|
---
|
|
214
307
|
|
|
215
|
-
## How Skills Work with
|
|
308
|
+
## How Skills Work with the Knowledge Index
|
|
216
309
|
|
|
217
|
-
|
|
310
|
+
The knowledge index provides always-available context (the documentation index).
|
|
218
311
|
**Skills** provide specialized, on-demand expertise.
|
|
219
312
|
|
|
220
313
|
Together they work seamlessly:
|
|
221
314
|
|
|
222
|
-
| Your Question |
|
|
315
|
+
| Your Question | Knowledge Index Provides | Skills Activate |
|
|
223
316
|
| ------------------------------- | ------------------------------- | ----------------------------- |
|
|
224
|
-
| "Create a login screen" | Context about project structure | `
|
|
317
|
+
| "Create a login screen" | Context about project structure | `ti-expert`, `ti-ui` |
|
|
225
318
|
| "Optimize ListView performance" | Points to docs location | `ti-ui` reads specific files |
|
|
226
319
|
| "Implement push notifications" | API reference paths | `ti-howtos` provides workflow |
|
|
227
320
|
|
|
@@ -233,7 +326,7 @@ Together they work seamlessly:
|
|
|
233
326
|
|
|
234
327
|
| Skill | Purpose | Best For |
|
|
235
328
|
| ---------------- | ----------------------------- | --------------------------------------- |
|
|
236
|
-
| **
|
|
329
|
+
| **ti-expert** | Architecture + Implementation | Starting point for most tasks |
|
|
237
330
|
| **purgetss** | Utility-first styling | UI styling and animations |
|
|
238
331
|
| **ti-ui** | UI/UX patterns | Complex layouts, ListViews, platform UI |
|
|
239
332
|
| **ti-howtos** | Native feature integration | Location, Push, Media, Platform APIs |
|
|
@@ -241,7 +334,7 @@ Together they work seamlessly:
|
|
|
241
334
|
| **alloy-guides** | Alloy MVC reference | Models, Views, Controllers, Widgets |
|
|
242
335
|
| **alloy-howtos** | Alloy CLI & debugging | Project setup, CLI commands, errors |
|
|
243
336
|
|
|
244
|
-
> **Note:** `ti-guides`, `ti-howtos`, `ti-ui`, `alloy-guides`, and `alloy-howtos` are based on **official Titanium SDK and Alloy documentation**. `
|
|
337
|
+
> **Note:** `ti-guides`, `ti-howtos`, `ti-ui`, `alloy-guides`, and `alloy-howtos` are based on **official Titanium SDK and Alloy documentation**. `ti-expert` and `purgetss` are opinionated and reflect personal coding conventions (biased toward PurgeTSS).
|
|
245
338
|
|
|
246
339
|
---
|
|
247
340
|
|
|
@@ -249,34 +342,34 @@ Together they work seamlessly:
|
|
|
249
342
|
|
|
250
343
|
In addition to skills, this repository includes **sub-agents** for Claude Code. Sub-agents run in isolated contexts and are ideal for research tasks that produce verbose output.
|
|
251
344
|
|
|
252
|
-
### ti-
|
|
345
|
+
### ti-pro
|
|
253
346
|
|
|
254
347
|
**Deep-dive research specialist that preloads all 7 titanium-\* skills.**
|
|
255
348
|
|
|
256
349
|
| Aspect | Details |
|
|
257
350
|
| -------------------- | -------------------------------------------- |
|
|
258
|
-
| **Location** | `~/.claude/agents/ti-
|
|
351
|
+
| **Location** | `~/.claude/agents/ti-pro.md` |
|
|
259
352
|
| **Model** | Sonnet (comprehensive analysis) |
|
|
260
353
|
| **Tools** | Read-only (Read, Grep, Glob) |
|
|
261
354
|
| **Preloaded Skills** | All 7 titanium-\* skills injected at startup |
|
|
262
355
|
|
|
263
356
|
**When to use the agent vs skills:**
|
|
264
357
|
|
|
265
|
-
| Use Case | Use This
|
|
266
|
-
| ---------------------------- |
|
|
267
|
-
| Quick inline reference | `/
|
|
268
|
-
| Analyzing an entire codebase | `ti-
|
|
269
|
-
| Multi-feature research | `ti-
|
|
270
|
-
| Step-by-step implementation | Skills directly
|
|
271
|
-
| Architecture review | `ti-
|
|
358
|
+
| Use Case | Use This | Why |
|
|
359
|
+
| ---------------------------- | ------------------------------- | ---------------------------------------------------- |
|
|
360
|
+
| Quick inline reference | `/ti-expert`, `/purgetss`, etc. | Runs in main conversation, interactive |
|
|
361
|
+
| Analyzing an entire codebase | `ti-pro` agent | Isolates verbose output, cross-references all skills |
|
|
362
|
+
| Multi-feature research | `ti-pro` agent | Preloads all skills for comprehensive answers |
|
|
363
|
+
| Step-by-step implementation | Skills directly | Task-oriented guidance |
|
|
364
|
+
| Architecture review | `ti-pro` agent | Read-only analysis across all documentation |
|
|
272
365
|
|
|
273
366
|
**Example prompts for the agent:**
|
|
274
367
|
|
|
275
368
|
```
|
|
276
|
-
"
|
|
277
|
-
"
|
|
278
|
-
"
|
|
279
|
-
"Review this Titanium mobile app and identify anti
|
|
369
|
+
"Can you use the ti-pro agent to analyze this Alloy codebase’s architecture?"
|
|
370
|
+
"Can you research how to combine location, push, and background sync in Titanium?"
|
|
371
|
+
"Can you compare ListView vs TableView performance for my use case?"
|
|
372
|
+
"Review this Titanium mobile app and identify anti‑patterns."
|
|
280
373
|
```
|
|
281
374
|
|
|
282
375
|
> **Tip**: For automatic activation, include words like "Titanium", "Alloy", or "mobile app" in your prompt to ensure the specialized agent is used instead of generic code analysis.
|
|
@@ -292,11 +385,11 @@ In addition to skills, this repository includes **sub-agents** for Claude Code.
|
|
|
292
385
|
Skills are **automatically activated** based on your questions. Just ask naturally:
|
|
293
386
|
|
|
294
387
|
```
|
|
295
|
-
"
|
|
388
|
+
"Can you create a login screen with email validation and animations?"
|
|
296
389
|
```
|
|
297
390
|
|
|
298
391
|
The AI will automatically use:
|
|
299
|
-
- `
|
|
392
|
+
- `ti-expert` → Architecture and controller structure
|
|
300
393
|
- `purgetss` → Styling classes and animations (if PurgeTSS detected)
|
|
301
394
|
- `ti-howtos` → Secure token storage
|
|
302
395
|
|
|
@@ -309,7 +402,7 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
309
402
|
| Skill | What It Detects | How It Works |
|
|
310
403
|
| ---------------- | --------------------- | ------------------------------------------------------------- |
|
|
311
404
|
| **purgetss** | PurgeTSS installation | Checks for `purgetss/` folder, `config.cjs`, `utilities.tss` |
|
|
312
|
-
| **
|
|
405
|
+
| **ti-expert** | Alloy vs Classic | Checks for `app/` (Alloy) vs `Resources/` (Classic) structure |
|
|
313
406
|
| **alloy-guides** | Alloy projects | Checks for `app/views/`, `app/controllers/` |
|
|
314
407
|
| **alloy-howtos** | Alloy projects | Checks for `alloy.jmk`, `config.json` |
|
|
315
408
|
| **ti-ui** | Titanium projects | Checks for `tiapp.xml` (both Alloy & Classic) |
|
|
@@ -323,11 +416,11 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
323
416
|
|
|
324
417
|
### Skill Hierarchy
|
|
325
418
|
|
|
326
|
-
`
|
|
419
|
+
`ti-expert` acts as the **orchestrator**, delegating to specialized skills when needed:
|
|
327
420
|
|
|
328
421
|
```
|
|
329
422
|
┌─────────────────┐
|
|
330
|
-
│
|
|
423
|
+
│ ti-expert │
|
|
331
424
|
│ (Start Here) │
|
|
332
425
|
└────────┬────────┘
|
|
333
426
|
│
|
|
@@ -354,7 +447,7 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
354
447
|
|
|
355
448
|
## Skill Details
|
|
356
449
|
|
|
357
|
-
###
|
|
450
|
+
### ti-expert
|
|
358
451
|
|
|
359
452
|
**The primary skill for Titanium Alloy development.** Start here for most tasks.
|
|
360
453
|
|
|
@@ -371,16 +464,16 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
371
464
|
**Example prompts:**
|
|
372
465
|
```
|
|
373
466
|
"How should I structure a new Titanium Alloy app with authentication?"
|
|
374
|
-
"Create a user service that fetches data from an API"
|
|
375
|
-
"What
|
|
376
|
-
"
|
|
377
|
-
"Migrate
|
|
467
|
+
"Create a user service that fetches data from an API."
|
|
468
|
+
"What’s the best pattern for navigation between screens?"
|
|
469
|
+
"Prevent memory leaks in my controllers."
|
|
470
|
+
"Migrate classic Titanium code to modern Alloy patterns."
|
|
471
|
+
"What’s a clean way to organize services in an Alloy app?"
|
|
378
472
|
```
|
|
379
473
|
|
|
380
474
|
**Key features:**
|
|
381
|
-
- PurgeTSS rules built-in (correct classes)
|
|
382
475
|
- Quick decision matrix for common questions
|
|
383
|
-
-
|
|
476
|
+
- 18 reference guides for deep dives
|
|
384
477
|
- Delegates to specialized skills when needed
|
|
385
478
|
|
|
386
479
|
---
|
|
@@ -400,12 +493,12 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
400
493
|
|
|
401
494
|
**Example prompts:**
|
|
402
495
|
```
|
|
403
|
-
"
|
|
404
|
-
"Create a responsive 12
|
|
405
|
-
"Add a fade
|
|
406
|
-
"
|
|
496
|
+
"How do I set up PurgeTSS in my existing Alloy project?"
|
|
497
|
+
"Create a responsive 12‑column grid layout."
|
|
498
|
+
"Add a fade‑in animation when my view appears."
|
|
499
|
+
"How do I configure custom colors in config.cjs?"
|
|
407
500
|
"How do I use Font Awesome 7 icons?"
|
|
408
|
-
"Style this button differently on iOS vs Android"
|
|
501
|
+
"Style this button differently on iOS vs Android."
|
|
409
502
|
```
|
|
410
503
|
|
|
411
504
|
**Critical rules:**
|
|
@@ -434,12 +527,12 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
434
527
|
|
|
435
528
|
**Example prompts:**
|
|
436
529
|
```
|
|
437
|
-
"
|
|
438
|
-
"Handle swipe gestures on table rows"
|
|
439
|
-
"Set up app icons for all iOS and Android densities"
|
|
440
|
-
"Implement pull
|
|
441
|
-
"
|
|
442
|
-
"
|
|
530
|
+
"How do I create a high‑performance ListView with custom templates?"
|
|
531
|
+
"Handle swipe gestures on table rows."
|
|
532
|
+
"Set up app icons for all iOS and Android densities."
|
|
533
|
+
"Implement pull‑to‑refresh on a ScrollView."
|
|
534
|
+
"How do I make my app accessible for VoiceOver users?"
|
|
535
|
+
"How do I configure the Android Action Bar with custom menu items?"
|
|
443
536
|
```
|
|
444
537
|
|
|
445
538
|
**Key rules:**
|
|
@@ -470,13 +563,14 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
470
563
|
|
|
471
564
|
**Example prompts:**
|
|
472
565
|
```
|
|
473
|
-
"
|
|
474
|
-
"
|
|
475
|
-
"
|
|
476
|
-
"Download files with progress indicator"
|
|
477
|
-
"
|
|
478
|
-
"Create an Android background service"
|
|
479
|
-
"Integrate with Apple Watch using WatchKit"
|
|
566
|
+
"How do I implement battery‑efficient GPS tracking?"
|
|
567
|
+
"How do I set up push notifications for iOS and Android?"
|
|
568
|
+
"How do I capture and resize photos from the camera?"
|
|
569
|
+
"Download files with a progress indicator."
|
|
570
|
+
"How should I store sensitive data in iOS Keychain?"
|
|
571
|
+
"Create an Android background service."
|
|
572
|
+
"Integrate with Apple Watch using WatchKit."
|
|
573
|
+
"Handle background location updates on iOS."
|
|
480
574
|
```
|
|
481
575
|
|
|
482
576
|
**Key rules:**
|
|
@@ -503,12 +597,12 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
503
597
|
|
|
504
598
|
**Example prompts:**
|
|
505
599
|
```
|
|
506
|
-
"
|
|
507
|
-
"Configure tiapp.xml for production build"
|
|
508
|
-
"
|
|
509
|
-
"
|
|
510
|
-
"Optimize bridge crossings for better performance"
|
|
511
|
-
"
|
|
600
|
+
"How do I access native iOS APIs using Hyperloop?"
|
|
601
|
+
"Configure tiapp.xml for a production build."
|
|
602
|
+
"What do I need for Google Play submission?"
|
|
603
|
+
"How do I create a native Android module?"
|
|
604
|
+
"Optimize bridge crossings for better performance."
|
|
605
|
+
"List reserved words I should avoid."
|
|
512
606
|
```
|
|
513
607
|
|
|
514
608
|
---
|
|
@@ -529,11 +623,11 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
529
623
|
|
|
530
624
|
**Example prompts:**
|
|
531
625
|
```
|
|
532
|
-
"Explain how Alloy data binding works"
|
|
533
|
-
"
|
|
534
|
-
"Bind a collection to a TableView"
|
|
535
|
-
"
|
|
536
|
-
"
|
|
626
|
+
"Explain how Alloy data binding works."
|
|
627
|
+
"How do I create a model with the SQLite adapter?"
|
|
628
|
+
"Bind a collection to a TableView."
|
|
629
|
+
"How do I build a reusable widget?"
|
|
630
|
+
"Show the TSS syntax for platform‑specific styles."
|
|
537
631
|
"How does the Alloy compilation process work?"
|
|
538
632
|
```
|
|
539
633
|
|
|
@@ -554,12 +648,12 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
554
648
|
|
|
555
649
|
**Example prompts:**
|
|
556
650
|
```
|
|
557
|
-
"
|
|
558
|
-
"Configure alloy.jmk build hooks"
|
|
559
|
-
"
|
|
560
|
-
"Create conditional views based on user state"
|
|
561
|
-
"
|
|
562
|
-
"Set up Backbone.Events for global communication"
|
|
651
|
+
"How do I generate a new model with the CLI?"
|
|
652
|
+
"Configure alloy.jmk build hooks."
|
|
653
|
+
"How do I fix “No app.js found”?"
|
|
654
|
+
"Create conditional views based on user state."
|
|
655
|
+
"How do I build a custom XML tag without widgets?"
|
|
656
|
+
"Set up Backbone.Events for global communication."
|
|
563
657
|
```
|
|
564
658
|
|
|
565
659
|
**Key rules:**
|
|
@@ -574,12 +668,12 @@ All skills now include **automatic project detection** to ensure compatibility:
|
|
|
574
668
|
### Starting a New Project
|
|
575
669
|
```
|
|
576
670
|
"I'm starting a new Titanium Alloy app for a food delivery service.
|
|
577
|
-
|
|
671
|
+
Can you help me set up the project structure?"
|
|
578
672
|
```
|
|
579
673
|
|
|
580
674
|
### UI Development
|
|
581
675
|
```
|
|
582
|
-
"
|
|
676
|
+
"Can you create a product listing screen with:
|
|
583
677
|
- Pull-to-refresh
|
|
584
678
|
- Infinite scroll pagination
|
|
585
679
|
- Image caching
|
|
@@ -588,7 +682,7 @@ Help me set up the project structure."
|
|
|
588
682
|
|
|
589
683
|
### API Integration
|
|
590
684
|
```
|
|
591
|
-
"
|
|
685
|
+
"Can you build a complete authentication flow with:
|
|
592
686
|
- Login/Register screens
|
|
593
687
|
- JWT token management
|
|
594
688
|
- Secure storage
|
|
@@ -597,33 +691,31 @@ Help me set up the project structure."
|
|
|
597
691
|
|
|
598
692
|
### Performance Optimization
|
|
599
693
|
```
|
|
600
|
-
"My app is slow
|
|
601
|
-
the app uses too much memory. Help me optimize it."
|
|
694
|
+
"My app is slow — the ListView scrolls poorly and memory usage is high. How do I optimize it?"
|
|
602
695
|
```
|
|
603
696
|
|
|
604
697
|
### Migration
|
|
605
698
|
```
|
|
606
|
-
"I have a legacy Titanium classic app from 2015.
|
|
607
|
-
Help me migrate it to modern Alloy with PurgeTSS."
|
|
699
|
+
"I have a legacy Titanium classic app from 2015. Can you help me migrate it to modern Alloy?"
|
|
608
700
|
```
|
|
609
701
|
|
|
610
702
|
### Platform-Specific Features
|
|
611
703
|
```
|
|
612
|
-
"
|
|
704
|
+
"How do I implement Apple Sign‑In for iOS and Google Sign‑In for Android?"
|
|
613
705
|
```
|
|
614
706
|
|
|
615
707
|
### Debugging
|
|
616
708
|
```
|
|
617
|
-
"I
|
|
709
|
+
"How do I fix “Alloy is not defined” in my lib file?"
|
|
618
710
|
```
|
|
619
711
|
|
|
620
712
|
### Codebase Analysis (Using Agent)
|
|
621
713
|
```
|
|
622
|
-
"Use the ti-
|
|
623
|
-
-
|
|
624
|
-
-
|
|
625
|
-
-
|
|
626
|
-
-
|
|
714
|
+
"Use the ti-pro agent to analyze this project and:
|
|
715
|
+
- review the overall architecture
|
|
716
|
+
- identify memory leak patterns
|
|
717
|
+
- check for common anti‑patterns
|
|
718
|
+
- suggest improvements"
|
|
627
719
|
```
|
|
628
720
|
|
|
629
721
|
---
|
|
@@ -632,10 +724,10 @@ Help me migrate it to modern Alloy with PurgeTSS."
|
|
|
632
724
|
|
|
633
725
|
### 1. Be Specific
|
|
634
726
|
Instead of: "Make a list"
|
|
635
|
-
Try: "
|
|
727
|
+
Try: "Can you create a ListView with user avatars, names, and swipe actions?"
|
|
636
728
|
|
|
637
729
|
### 2. Provide Context
|
|
638
|
-
Instead of: "
|
|
730
|
+
Instead of: "How do I fix this error?"
|
|
639
731
|
Try: "I'm getting this error when compiling: [error message]. Here's my code: [code]"
|
|
640
732
|
|
|
641
733
|
### 3. Ask for Architecture First
|
|
@@ -649,7 +741,7 @@ Then follow up with implementation details.
|
|
|
649
741
|
### 5. Reference Existing Code
|
|
650
742
|
"Here's my current controller. How can I improve memory management?"
|
|
651
743
|
|
|
652
|
-
> **More examples:** See [Example Prompts](
|
|
744
|
+
> **More examples:** See [Example Prompts](EXAMPLE-PROMPTS.md) for detailed prompts that test each skill's capabilities.
|
|
653
745
|
|
|
654
746
|
---
|
|
655
747
|
|
|
@@ -657,11 +749,11 @@ Then follow up with implementation details.
|
|
|
657
749
|
|
|
658
750
|
| Skill | SKILL.md | References |
|
|
659
751
|
| ------------ | ----------------------------- | ----------------------------------------------------- |
|
|
660
|
-
|
|
|
661
|
-
| purgetss | Setup + Critical Rules |
|
|
662
|
-
| ti-ui | UI Rules + Platform Diffs |
|
|
663
|
-
| ti-howtos | Integration Workflow |
|
|
664
|
-
| ti-guides | Core Workflow |
|
|
752
|
+
| ti-expert | Architecture + Implementation | 19 refs + 1 asset (patterns, testing, security, etc.) |
|
|
753
|
+
| purgetss | Setup + Critical Rules | 21 files (grid, animations, icons, class-index, etc.) |
|
|
754
|
+
| ti-ui | UI Rules + Platform Diffs | 14 files (layouts, lists, gestures, etc.) |
|
|
755
|
+
| ti-howtos | Integration Workflow | 18 files (location, media, maps, automation, etc.) |
|
|
756
|
+
| ti-guides | Core Workflow | 14 files (hyperloop, distribution, etc.) |
|
|
665
757
|
| alloy-guides | MVC Quick Start | 10 files (models, views, widgets, etc.) |
|
|
666
758
|
| alloy-howtos | Best Practices | 6 files (CLI, config, debugging, etc.) |
|
|
667
759
|
|
|
@@ -703,13 +795,9 @@ If the AI suggests incorrect patterns (like flexbox):
|
|
|
703
795
|
Ask the AI to:
|
|
704
796
|
```
|
|
705
797
|
"Show me the reference documentation for ListView performance"
|
|
706
|
-
"What does the
|
|
798
|
+
"What does the ti-expert skill say about memory cleanup?"
|
|
707
799
|
```
|
|
708
800
|
|
|
709
|
-
---
|
|
710
|
-
|
|
711
|
-
## Troubleshooting
|
|
712
|
-
|
|
713
801
|
### titools command not found?
|
|
714
802
|
|
|
715
803
|
If the command is not found:
|
|
@@ -721,16 +809,16 @@ npm list -g @maccesar/titools
|
|
|
721
809
|
npm install -g @maccesar/titools
|
|
722
810
|
```
|
|
723
811
|
|
|
724
|
-
###
|
|
812
|
+
### Knowledge index not working?
|
|
725
813
|
|
|
726
|
-
If your AI doesn't use the
|
|
727
|
-
1. Verify AGENTS.md/CLAUDE.md exists in your project root
|
|
728
|
-
2. Check that your AI supports these files
|
|
814
|
+
If your AI doesn't use the knowledge index information:
|
|
815
|
+
1. Verify AGENTS.md/CLAUDE.md/GEMINI.md exists in your project root
|
|
816
|
+
2. Check that your AI supports these files
|
|
729
817
|
3. Try explicitly referencing: "Check the AGENTS.md documentation"
|
|
730
818
|
|
|
731
819
|
### Version mismatch warning?
|
|
732
820
|
|
|
733
|
-
|
|
821
|
+
The knowledge index is based on the latest documentation. Be cautious when using newer APIs in older projects.
|
|
734
822
|
|
|
735
823
|
---
|
|
736
824
|
|
|
@@ -740,17 +828,11 @@ AGENTS.md is based on the latest documentation. Be cautious when using newer API
|
|
|
740
828
|
# Remove the CLI
|
|
741
829
|
npm uninstall -g @maccesar/titools
|
|
742
830
|
|
|
743
|
-
# Remove
|
|
744
|
-
titools
|
|
831
|
+
# Remove knowledge packages and agent
|
|
832
|
+
titools remove
|
|
745
833
|
```
|
|
746
834
|
|
|
747
|
-
**Note:**
|
|
748
|
-
|
|
749
|
-
```bash
|
|
750
|
-
rm -f /path/to/your/project/AGENTS.md
|
|
751
|
-
rm -f /path/to/your/project/CLAUDE.md
|
|
752
|
-
rm -f /path/to/your/project/GEMINI.md
|
|
753
|
-
```
|
|
835
|
+
**Note:** `titools remove` can remove the knowledge index blocks from your project files, but it does not delete the files themselves.
|
|
754
836
|
|
|
755
837
|
|
|
756
838
|
---
|