aircana 1.4.0 → 1.5.0.rc2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dabbbd35ca22c8dd9929e5b75c599e46eda98d3e9993c7ebd94f8f12687b8bec
4
- data.tar.gz: 1d01a1b9565d2fb7620e4a93273d4158fc95bf5c283293310c258223db164361
3
+ metadata.gz: 312d326adcc6bff5172859bc14c0040f66f716afa441dd3fc66222b387e5c076
4
+ data.tar.gz: 3a1d3e8284cf9abf68c835dc9b6094ee93d72403109c3a2cce6feb73a999e29c
5
5
  SHA512:
6
- metadata.gz: f276a4cf286f903cc0ec426daad20cd96595b2ba5e337fba59fdd4a0442cb3c21db1df64dd48122cc97029334c266292af47beb62c4a173ff5a37a1efba2f4bb
7
- data.tar.gz: 611253d197b41de6704882540c66b247d2cd0d61f6e1db5df8789026f58d17da73424c6de815330b6e5321d02566666dfdc00606e2752a1aef34bd2b9fa66770
6
+ metadata.gz: 8426996238955fa216e0058dd2f8a6fcdf6dd761ee7fac281787ee4755067e1a33bafbc47f186341d593ac5f844e463e0067163a64dd532ad5a6e4812cdd1809
7
+ data.tar.gz: 6a927d67954f765927339bdced8aceef7cdbeaeb47f6b11b8edc89bb65848b722d1a0ff73f458700b0eedaa56125d8c58df823948fe753b451a084dd04a31ff9
data/.rspec_status CHANGED
@@ -1,199 +1,202 @@
1
- example_id | status | run_time |
2
- --------------------------------------------------------------- | ------ | --------------- |
3
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:1:1] | passed | 0.00656 seconds |
4
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:2:1] | passed | 0.00083 seconds |
5
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:3:1] | passed | 0.00073 seconds |
6
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:4:1] | passed | 0.00276 seconds |
7
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:4:2:1] | passed | 0.01439 seconds |
8
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:5:1] | passed | 0.00245 seconds |
9
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:2:1] | passed | 0.00199 seconds |
10
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:2:2] | passed | 0.00228 seconds |
11
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:1] | passed | 0.00083 seconds |
12
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:2] | passed | 0.0007 seconds |
13
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:3] | passed | 0.00082 seconds |
14
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:4] | passed | 0.00074 seconds |
15
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:5] | passed | 0.00072 seconds |
16
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:6] | passed | 0.00071 seconds |
17
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:7] | passed | 0.00069 seconds |
18
- ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:8] | passed | 0.00068 seconds |
19
- ./spec/aircana/cli/commands/agents_spec.rb[1:1:1:1] | passed | 0.00052 seconds |
20
- ./spec/aircana/cli/commands/agents_spec.rb[1:1:1:2] | passed | 0.00041 seconds |
21
- ./spec/aircana/cli/commands/agents_spec.rb[1:1:1:3] | passed | 0.00036 seconds |
22
- ./spec/aircana/cli/commands/agents_spec.rb[1:1:2:1] | passed | 0.00127 seconds |
23
- ./spec/aircana/cli/commands/agents_spec.rb[1:1:3:1] | passed | 0.00036 seconds |
24
- ./spec/aircana/cli/commands/agents_spec.rb[1:1:3:2] | passed | 0.00033 seconds |
25
- ./spec/aircana/cli/commands/agents_spec.rb[1:2:1:1] | passed | 0.00047 seconds |
26
- ./spec/aircana/cli/commands/agents_spec.rb[1:2:1:2] | passed | 0.00051 seconds |
27
- ./spec/aircana/cli/commands/agents_spec.rb[1:2:1:3:1] | passed | 0.00308 seconds |
28
- ./spec/aircana/cli/commands/agents_spec.rb[1:2:2:1] | passed | 0.00036 seconds |
29
- ./spec/aircana/cli/commands/agents_spec.rb[1:2:3:1] | passed | 0.00037 seconds |
30
- ./spec/aircana/cli/commands/agents_spec.rb[1:2:4:1] | passed | 0.00036 seconds |
31
- ./spec/aircana/cli/commands/agents_spec.rb[1:3:1] | passed | 0.00052 seconds |
32
- ./spec/aircana/cli/commands/agents_spec.rb[1:3:2] | passed | 0.0006 seconds |
33
- ./spec/aircana/cli/commands/agents_spec.rb[1:3:3] | passed | 0.00072 seconds |
34
- ./spec/aircana/cli/commands/agents_spec.rb[1:4:1] | passed | 0.0002 seconds |
35
- ./spec/aircana/cli/commands/hooks_spec.rb[1:1:1:1] | passed | 0.00088 seconds |
36
- ./spec/aircana/cli/commands/hooks_spec.rb[1:1:2:1:1] | passed | 0.0008 seconds |
37
- ./spec/aircana/cli/commands/hooks_spec.rb[1:1:2:2:1] | passed | 0.00118 seconds |
38
- ./spec/aircana/cli/commands/hooks_spec.rb[1:2:1:1] | passed | 0.00098 seconds |
39
- ./spec/aircana/cli/commands/hooks_spec.rb[1:2:2:1] | passed | 0.00074 seconds |
40
- ./spec/aircana/cli/commands/hooks_spec.rb[1:3:1:1] | passed | 0.00062 seconds |
41
- ./spec/aircana/cli/commands/hooks_spec.rb[1:3:2:1] | passed | 0.00162 seconds |
42
- ./spec/aircana/cli/commands/hooks_spec.rb[1:4:1] | passed | 0.00158 seconds |
43
- ./spec/aircana/cli/commands/hooks_spec.rb[1:4:2:1] | passed | 0.0013 seconds |
44
- ./spec/aircana/cli/commands/hooks_spec.rb[1:5:1:1] | passed | 0.00065 seconds |
45
- ./spec/aircana/cli/commands/hooks_spec.rb[1:5:2:1] | passed | 0.00109 seconds |
46
- ./spec/aircana/cli/commands/hooks_spec.rb[1:5:3:1] | passed | 0.00103 seconds |
47
- ./spec/aircana/cli/commands/hooks_spec.rb[1:5:4:1] | passed | 0.00083 seconds |
48
- ./spec/aircana/cli/commands/hooks_spec.rb[1:6:1:1] | passed | 0.00065 seconds |
49
- ./spec/aircana/cli/commands/hooks_spec.rb[1:6:2:1] | passed | 0.00106 seconds |
50
- ./spec/aircana/cli/commands/hooks_spec.rb[1:7:1] | passed | 0.00058 seconds |
51
- ./spec/aircana/cli/commands/install_spec.rb[1:1:1] | passed | 0.00192 seconds |
52
- ./spec/aircana/cli/commands/install_spec.rb[1:1:2] | passed | 0.00164 seconds |
53
- ./spec/aircana/cli/commands/install_spec.rb[1:2:1:1] | passed | 0.00751 seconds |
54
- ./spec/aircana/cli/commands/install_spec.rb[1:2:2:1] | passed | 0.00482 seconds |
55
- ./spec/aircana/cli/commands/install_spec.rb[1:2:3:1] | passed | 0.00656 seconds |
56
- ./spec/aircana/cli/commands/install_spec.rb[1:2:4:1] | passed | 0.00416 seconds |
57
- ./spec/aircana/cli/commands/install_spec.rb[1:3:1] | passed | 0.00197 seconds |
58
- ./spec/aircana/cli/commands/install_spec.rb[1:3:2:1] | passed | 0.0024 seconds |
59
- ./spec/aircana/cli/commands/install_spec.rb[1:3:3:1] | passed | 0.00256 seconds |
60
- ./spec/aircana/cli/commands/install_spec.rb[1:3:4:1] | passed | 0.00285 seconds |
61
- ./spec/aircana/cli/commands/install_spec.rb[1:4:1] | passed | 0.00102 seconds |
62
- ./spec/aircana/cli/commands/install_spec.rb[1:4:2] | passed | 0.00089 seconds |
63
- ./spec/aircana/cli/commands/install_spec.rb[1:4:3] | passed | 0.00111 seconds |
64
- ./spec/aircana/cli/commands/install_spec.rb[1:4:4] | passed | 0.00201 seconds |
65
- ./spec/aircana/cli/commands/install_spec.rb[1:4:5] | passed | 0.00124 seconds |
66
- ./spec/aircana/cli/commands/install_spec.rb[1:5:1:1] | passed | 0.00164 seconds |
67
- ./spec/aircana/cli/commands/install_spec.rb[1:5:2:1] | passed | 0.00097 seconds |
68
- ./spec/aircana/cli/commands/install_spec.rb[1:5:3:1] | passed | 0.00114 seconds |
69
- ./spec/aircana/cli/commands/install_spec.rb[1:6:1] | passed | 0.0012 seconds |
70
- ./spec/aircana/configuration_spec.rb[1:1:1] | passed | 0.00015 seconds |
71
- ./spec/aircana/configuration_spec.rb[1:2:1] | passed | 0.0001 seconds |
72
- ./spec/aircana/configuration_spec.rb[1:3:1] | passed | 0.00008 seconds |
73
- ./spec/aircana/configuration_spec.rb[1:4:1] | passed | 0.00007 seconds |
74
- ./spec/aircana/configuration_spec.rb[1:5:1] | passed | 0.00007 seconds |
75
- ./spec/aircana/configuration_spec.rb[1:5:2] | passed | 0.00007 seconds |
76
- ./spec/aircana/contexts/confluence_spec.rb[1:1:1:1] | passed | 0.00202 seconds |
77
- ./spec/aircana/contexts/confluence_spec.rb[1:1:1:2] | passed | 0.00051 seconds |
78
- ./spec/aircana/contexts/confluence_spec.rb[1:1:1:3] | passed | 0.00114 seconds |
79
- ./spec/aircana/contexts/confluence_spec.rb[1:1:2:1] | passed | 0.0002 seconds |
80
- ./spec/aircana/contexts/confluence_spec.rb[1:1:2:2] | passed | 0.00014 seconds |
81
- ./spec/aircana/contexts/confluence_spec.rb[1:1:2:3] | passed | 0.00012 seconds |
82
- ./spec/aircana/contexts/confluence_spec.rb[1:1:3:1] | passed | 0.00033 seconds |
83
- ./spec/aircana/contexts/confluence_spec.rb[1:1:3:2] | passed | 0.0004 seconds |
84
- ./spec/aircana/contexts/local_spec.rb[1:1:1] | passed | 0.00125 seconds |
85
- ./spec/aircana/contexts/local_spec.rb[1:1:2] | passed | 0.00104 seconds |
86
- ./spec/aircana/contexts/local_spec.rb[1:1:3] | passed | 0.00104 seconds |
87
- ./spec/aircana/contexts/local_spec.rb[1:1:4] | passed | 0.00098 seconds |
88
- ./spec/aircana/contexts/local_spec.rb[1:1:5] | passed | 0.00121 seconds |
89
- ./spec/aircana/contexts/local_spec.rb[1:1:6] | passed | 0.0011 seconds |
90
- ./spec/aircana/contexts/local_spec.rb[1:1:7] | passed | 0.00174 seconds |
91
- ./spec/aircana/contexts/local_spec.rb[1:1:8] | passed | 0.00131 seconds |
92
- ./spec/aircana/contexts/manifest_spec.rb[1:1:1] | passed | 0.00109 seconds |
93
- ./spec/aircana/contexts/manifest_spec.rb[1:1:2] | passed | 0.00121 seconds |
94
- ./spec/aircana/contexts/manifest_spec.rb[1:2:1] | passed | 1.01 seconds |
95
- ./spec/aircana/contexts/manifest_spec.rb[1:2:2] | passed | 0.00222 seconds |
96
- ./spec/aircana/contexts/manifest_spec.rb[1:3:1] | passed | 0.00176 seconds |
97
- ./spec/aircana/contexts/manifest_spec.rb[1:3:2] | passed | 0.00044 seconds |
98
- ./spec/aircana/contexts/manifest_spec.rb[1:3:3] | passed | 0.00199 seconds |
99
- ./spec/aircana/contexts/manifest_spec.rb[1:3:4] | passed | 0.00173 seconds |
100
- ./spec/aircana/contexts/manifest_spec.rb[1:4:1] | passed | 0.00151 seconds |
101
- ./spec/aircana/contexts/manifest_spec.rb[1:4:2] | passed | 0.00032 seconds |
102
- ./spec/aircana/contexts/manifest_spec.rb[1:5:1] | passed | 0.00143 seconds |
103
- ./spec/aircana/contexts/manifest_spec.rb[1:5:2] | passed | 0.0003 seconds |
104
- ./spec/aircana/contexts/manifest_spec.rb[1:6:1] | passed | 0.00033 seconds |
105
- ./spec/aircana/contexts/manifest_spec.rb[1:6:2] | passed | 0.00034 seconds |
106
- ./spec/aircana/contexts/manifest_spec.rb[1:6:3] | passed | 0.00032 seconds |
107
- ./spec/aircana/contexts/manifest_spec.rb[1:6:4] | passed | 0.0003 seconds |
108
- ./spec/aircana/contexts/manifest_spec.rb[1:6:5] | passed | 0.00033 seconds |
109
- ./spec/aircana/contexts/manifest_spec.rb[1:6:6] | passed | 0.00033 seconds |
110
- ./spec/aircana/contexts/manifest_spec.rb[1:6:7] | passed | 0.00032 seconds |
111
- ./spec/aircana/contexts/manifest_spec.rb[1:6:8] | passed | 0.00033 seconds |
112
- ./spec/aircana/contexts/manifest_spec.rb[1:6:9] | passed | 0.00129 seconds |
113
- ./spec/aircana/contexts/web_spec.rb[1:1:1] | passed | 0.00031 seconds |
114
- ./spec/aircana/contexts/web_spec.rb[1:2:1] | passed | 0.00026 seconds |
115
- ./spec/aircana/contexts/web_spec.rb[1:3:1:1] | passed | 0.00017 seconds |
116
- ./spec/aircana/contexts/web_spec.rb[1:3:1:2] | passed | 0.00016 seconds |
117
- ./spec/aircana/contexts/web_spec.rb[1:3:1:3] | passed | 0.00016 seconds |
118
- ./spec/aircana/contexts/web_spec.rb[1:3:2:1] | passed | 0.00023 seconds |
119
- ./spec/aircana/contexts/web_spec.rb[1:3:2:2] | passed | 0.00017 seconds |
120
- ./spec/aircana/contexts/web_spec.rb[1:3:3:1] | passed | 0.00027 seconds |
121
- ./spec/aircana/contexts/web_spec.rb[1:3:3:2] | passed | 0.00043 seconds |
122
- ./spec/aircana/contexts/web_spec.rb[1:3:3:3] | passed | 0.00035 seconds |
123
- ./spec/aircana/contexts/web_spec.rb[1:3:3:4] | passed | 0.00024 seconds |
124
- ./spec/aircana/contexts/web_spec.rb[1:3:3:5] | passed | 0.00031 seconds |
125
- ./spec/aircana/contexts/web_spec.rb[1:3:4:1] | passed | 0.00018 seconds |
126
- ./spec/aircana/contexts/web_spec.rb[1:3:4:2] | passed | 0.00018 seconds |
127
- ./spec/aircana/contexts/web_spec.rb[1:3:4:3] | passed | 0.00017 seconds |
128
- ./spec/aircana/contexts/web_spec.rb[1:3:5:1] | passed | 0.00154 seconds |
129
- ./spec/aircana/contexts/web_spec.rb[1:3:5:2] | passed | 0.0002 seconds |
130
- ./spec/aircana/contexts/web_spec.rb[1:3:5:3] | passed | 0.00044 seconds |
131
- ./spec/aircana/contexts/web_spec.rb[1:3:6:1] | passed | 0.00035 seconds |
132
- ./spec/aircana/contexts/web_spec.rb[1:3:6:2] | passed | 0.00032 seconds |
133
- ./spec/aircana/contexts/web_spec.rb[1:3:6:3] | passed | 0.0003 seconds |
134
- ./spec/aircana/contexts/web_spec.rb[1:3:7:1] | passed | 0.00017 seconds |
135
- ./spec/aircana/contexts/web_spec.rb[1:3:7:2] | passed | 0.00019 seconds |
136
- ./spec/aircana/fzf_helper_spec.rb[1:1:1:1] | passed | 0.00022 seconds |
137
- ./spec/aircana/fzf_helper_spec.rb[1:1:1:2] | passed | 0.00034 seconds |
138
- ./spec/aircana/fzf_helper_spec.rb[1:1:1:3] | passed | 0.00026 seconds |
139
- ./spec/aircana/fzf_helper_spec.rb[1:1:2:1] | passed | 0.00073 seconds |
140
- ./spec/aircana/fzf_helper_spec.rb[1:1:3:1] | passed | 0.00028 seconds |
141
- ./spec/aircana/fzf_helper_spec.rb[1:2:1:1] | passed | 0.00015 seconds |
142
- ./spec/aircana/fzf_helper_spec.rb[1:2:1:2] | passed | 0.00014 seconds |
143
- ./spec/aircana/fzf_helper_spec.rb[1:2:1:3] | passed | 0.00014 seconds |
144
- ./spec/aircana/fzf_helper_spec.rb[1:2:2:1] | passed | 0.00013 seconds |
145
- ./spec/aircana/fzf_helper_spec.rb[1:2:2:2] | passed | 0.0001 seconds |
146
- ./spec/aircana/generators/agents_generator_spec.rb[1:1:1] | passed | 0.00004 seconds |
147
- ./spec/aircana/generators/agents_generator_spec.rb[1:2:1] | passed | 0.0002 seconds |
148
- ./spec/aircana/generators/agents_generator_spec.rb[1:3:1:1] | passed | 0.00006 seconds |
149
- ./spec/aircana/generators/agents_generator_spec.rb[1:3:1:2] | passed | 0.00005 seconds |
150
- ./spec/aircana/generators/agents_generator_spec.rb[1:4:1:1] | passed | 0.00005 seconds |
151
- ./spec/aircana/generators/hooks_generator_spec.rb[1:1:1] | passed | 0.00004 seconds |
152
- ./spec/aircana/generators/hooks_generator_spec.rb[1:2:1] | passed | 0.00003 seconds |
153
- ./spec/aircana/generators/hooks_generator_spec.rb[1:3:1] | passed | 0.00049 seconds |
154
- ./spec/aircana/generators/hooks_generator_spec.rb[1:3:2] | passed | 0.00025 seconds |
155
- ./spec/aircana/generators/hooks_generator_spec.rb[1:4:1] | passed | 0.00021 seconds |
156
- ./spec/aircana/generators/hooks_generator_spec.rb[1:5:1:1] | passed | 0.00012 seconds |
157
- ./spec/aircana/generators/hooks_generator_spec.rb[1:5:2:1] | passed | 0.00006 seconds |
158
- ./spec/aircana/generators/hooks_generator_spec.rb[1:6:1] | passed | 0.00061 seconds |
159
- ./spec/aircana/generators/hooks_generator_spec.rb[1:7:1] | passed | 0.00016 seconds |
160
- ./spec/aircana/generators/plan_command_generator_spec.rb[1:1:1] | passed | 0.00034 seconds |
161
- ./spec/aircana/generators/plan_command_generator_spec.rb[1:1:2] | passed | 0.00028 seconds |
162
- ./spec/aircana/generators/plan_command_generator_spec.rb[1:1:3] | passed | 0.00028 seconds |
163
- ./spec/aircana/generators/plan_command_generator_spec.rb[1:2:1] | passed | 0.0001 seconds |
164
- ./spec/aircana/generators/plan_command_generator_spec.rb[1:2:2] | passed | 0.00009 seconds |
165
- ./spec/aircana/human_logger_spec.rb[1:1:1] | passed | 0.00006 seconds |
166
- ./spec/aircana/human_logger_spec.rb[1:2:1] | passed | 0.00005 seconds |
167
- ./spec/aircana/human_logger_spec.rb[1:3:1] | passed | 0.00004 seconds |
168
- ./spec/aircana/human_logger_spec.rb[1:4:1] | passed | 0.00004 seconds |
169
- ./spec/aircana/human_logger_spec.rb[1:5:1] | passed | 0.00004 seconds |
170
- ./spec/aircana/human_logger_spec.rb[1:5:2] | passed | 0.00004 seconds |
171
- ./spec/aircana/human_logger_spec.rb[1:5:3] | passed | 0.00004 seconds |
172
- ./spec/aircana/human_logger_spec.rb[1:5:4] | passed | 0.00004 seconds |
173
- ./spec/aircana/human_logger_spec.rb[1:5:5] | passed | 0.00004 seconds |
174
- ./spec/aircana/human_logger_spec.rb[1:5:6] | passed | 0.00003 seconds |
175
- ./spec/aircana/human_logger_spec.rb[1:5:7] | passed | 0.00004 seconds |
176
- ./spec/aircana/human_logger_spec.rb[1:6:1] | passed | 0.00012 seconds |
177
- ./spec/aircana/llm/claude_client_spec.rb[1:1:1:1] | passed | 0.00044 seconds |
178
- ./spec/aircana/llm/claude_client_spec.rb[1:1:1:2] | passed | 0.00039 seconds |
179
- ./spec/aircana/llm/claude_client_spec.rb[1:1:1:3] | passed | 0.00045 seconds |
180
- ./spec/aircana/llm/claude_client_spec.rb[1:1:1:4] | passed | 0.00059 seconds |
181
- ./spec/aircana/llm/claude_client_spec.rb[1:1:2:1] | passed | 0.00052 seconds |
182
- ./spec/aircana/llm/claude_client_spec.rb[1:1:2:2] | passed | 0.00058 seconds |
183
- ./spec/aircana/llm/claude_client_spec.rb[1:1:3:1] | passed | 0.00042 seconds |
184
- ./spec/aircana/llm/claude_client_spec.rb[1:2:1] | passed | 0.00039 seconds |
185
- ./spec/aircana/llm/claude_client_spec.rb[1:2:2] | passed | 0.00054 seconds |
186
- ./spec/aircana/llm/claude_client_spec.rb[1:3:1:1] | passed | 0.00029 seconds |
187
- ./spec/aircana/llm/claude_client_spec.rb[1:3:1:2] | passed | 0.00026 seconds |
188
- ./spec/aircana/system_checker_spec.rb[1:1:1:1] | passed | 0.00041 seconds |
189
- ./spec/aircana/system_checker_spec.rb[1:1:2:1] | passed | 0.00053 seconds |
190
- ./spec/aircana/system_checker_spec.rb[1:1:3:1] | passed | 0.00071 seconds |
191
- ./spec/aircana/system_checker_spec.rb[1:2:1] | passed | 0.00024 seconds |
192
- ./spec/aircana/system_checker_spec.rb[1:2:2] | passed | 0.00024 seconds |
193
- ./spec/aircana/system_checker_spec.rb[1:3:1] | passed | 0.00022 seconds |
194
- ./spec/aircana/system_checker_spec.rb[1:3:2] | passed | 0.00025 seconds |
195
- ./spec/aircana/system_checker_spec.rb[1:3:3] | passed | 0.00025 seconds |
196
- ./spec/aircana/system_checker_spec.rb[1:3:4] | passed | 0.00031 seconds |
197
- ./spec/aircana/system_checker_spec.rb[1:3:5] | passed | 0.00019 seconds |
198
- ./spec/aircana_spec.rb[1:1] | passed | 0.00004 seconds |
199
- ./spec/aircana_spec.rb[1:2] | passed | 0.00097 seconds |
1
+ example_id | status | run_time |
2
+ --------------------------------------------------------------------- | ------ | --------------- |
3
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:1:1] | passed | 0.00508 seconds |
4
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:2:1] | passed | 0.00086 seconds |
5
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:3:1] | passed | 0.00075 seconds |
6
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:4:1] | passed | 0.00242 seconds |
7
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:4:2:1] | passed | 0.01562 seconds |
8
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:1:5:1] | passed | 0.00316 seconds |
9
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:2:1] | passed | 0.00214 seconds |
10
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:2:2] | passed | 0.00265 seconds |
11
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:1] | passed | 0.00092 seconds |
12
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:2] | passed | 0.00078 seconds |
13
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:3] | passed | 0.00076 seconds |
14
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:4] | passed | 0.00075 seconds |
15
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:5] | passed | 0.00072 seconds |
16
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:6] | passed | 0.00071 seconds |
17
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:7] | passed | 0.00093 seconds |
18
+ ./spec/aircana/cli/commands/add_directory_spec.rb[1:3:8] | passed | 0.00078 seconds |
19
+ ./spec/aircana/cli/commands/agents_spec.rb[1:1:1:1] | passed | 0.00054 seconds |
20
+ ./spec/aircana/cli/commands/agents_spec.rb[1:1:1:2] | passed | 0.00041 seconds |
21
+ ./spec/aircana/cli/commands/agents_spec.rb[1:1:1:3] | passed | 0.00033 seconds |
22
+ ./spec/aircana/cli/commands/agents_spec.rb[1:1:2:1] | passed | 0.00109 seconds |
23
+ ./spec/aircana/cli/commands/agents_spec.rb[1:1:3:1] | passed | 0.00037 seconds |
24
+ ./spec/aircana/cli/commands/agents_spec.rb[1:1:3:2] | passed | 0.00032 seconds |
25
+ ./spec/aircana/cli/commands/agents_spec.rb[1:2:1:1] | passed | 0.00053 seconds |
26
+ ./spec/aircana/cli/commands/agents_spec.rb[1:2:1:2] | passed | 0.00056 seconds |
27
+ ./spec/aircana/cli/commands/agents_spec.rb[1:2:1:3:1] | passed | 0.00288 seconds |
28
+ ./spec/aircana/cli/commands/agents_spec.rb[1:2:2:1] | passed | 0.00037 seconds |
29
+ ./spec/aircana/cli/commands/agents_spec.rb[1:2:3:1] | passed | 0.00077 seconds |
30
+ ./spec/aircana/cli/commands/agents_spec.rb[1:2:4:1] | passed | 0.00039 seconds |
31
+ ./spec/aircana/cli/commands/agents_spec.rb[1:3:1] | passed | 0.00074 seconds |
32
+ ./spec/aircana/cli/commands/agents_spec.rb[1:3:2] | passed | 0.00062 seconds |
33
+ ./spec/aircana/cli/commands/agents_spec.rb[1:3:3] | passed | 0.00044 seconds |
34
+ ./spec/aircana/cli/commands/agents_spec.rb[1:4:1] | passed | 0.00027 seconds |
35
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:1:1:1] | passed | 0.00081 seconds |
36
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:1:2:1:1] | passed | 0.00076 seconds |
37
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:1:2:2:1] | passed | 0.00164 seconds |
38
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:2:1:1] | passed | 0.00087 seconds |
39
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:2:2:1] | passed | 0.00081 seconds |
40
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:3:1:1] | passed | 0.0007 seconds |
41
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:3:2:1] | passed | 0.00135 seconds |
42
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:4:1] | passed | 0.00129 seconds |
43
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:4:2:1] | passed | 0.00142 seconds |
44
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:5:1:1] | passed | 0.00068 seconds |
45
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:5:2:1] | passed | 0.00109 seconds |
46
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:5:3:1] | passed | 0.00105 seconds |
47
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:5:4:1] | passed | 0.001 seconds |
48
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:6:1:1] | passed | 0.00067 seconds |
49
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:6:2:1] | passed | 0.00113 seconds |
50
+ ./spec/aircana/cli/commands/hooks_spec.rb[1:7:1] | passed | 0.00066 seconds |
51
+ ./spec/aircana/cli/commands/install_spec.rb[1:1:1] | passed | 0.00194 seconds |
52
+ ./spec/aircana/cli/commands/install_spec.rb[1:1:2] | passed | 0.00202 seconds |
53
+ ./spec/aircana/cli/commands/install_spec.rb[1:2:1:1] | passed | 0.00704 seconds |
54
+ ./spec/aircana/cli/commands/install_spec.rb[1:2:2:1] | passed | 0.00851 seconds |
55
+ ./spec/aircana/cli/commands/install_spec.rb[1:2:3:1] | passed | 0.0048 seconds |
56
+ ./spec/aircana/cli/commands/install_spec.rb[1:2:4:1] | passed | 0.00521 seconds |
57
+ ./spec/aircana/cli/commands/install_spec.rb[1:3:1] | passed | 0.00273 seconds |
58
+ ./spec/aircana/cli/commands/install_spec.rb[1:3:2:1] | passed | 0.00256 seconds |
59
+ ./spec/aircana/cli/commands/install_spec.rb[1:3:3:1] | passed | 0.00291 seconds |
60
+ ./spec/aircana/cli/commands/install_spec.rb[1:3:4:1] | passed | 0.00392 seconds |
61
+ ./spec/aircana/cli/commands/install_spec.rb[1:4:1] | passed | 0.00111 seconds |
62
+ ./spec/aircana/cli/commands/install_spec.rb[1:4:2] | passed | 0.00113 seconds |
63
+ ./spec/aircana/cli/commands/install_spec.rb[1:4:3] | passed | 0.00096 seconds |
64
+ ./spec/aircana/cli/commands/install_spec.rb[1:4:4] | passed | 0.00092 seconds |
65
+ ./spec/aircana/cli/commands/install_spec.rb[1:4:5] | passed | 0.00122 seconds |
66
+ ./spec/aircana/cli/commands/install_spec.rb[1:5:1:1] | passed | 0.00128 seconds |
67
+ ./spec/aircana/cli/commands/install_spec.rb[1:5:2:1] | passed | 0.00111 seconds |
68
+ ./spec/aircana/cli/commands/install_spec.rb[1:5:3:1] | passed | 0.00138 seconds |
69
+ ./spec/aircana/cli/commands/install_spec.rb[1:6:1] | passed | 0.00151 seconds |
70
+ ./spec/aircana/configuration_spec.rb[1:1:1] | passed | 0.00018 seconds |
71
+ ./spec/aircana/configuration_spec.rb[1:2:1] | passed | 0.00007 seconds |
72
+ ./spec/aircana/configuration_spec.rb[1:3:1] | passed | 0.00008 seconds |
73
+ ./spec/aircana/configuration_spec.rb[1:4:1] | passed | 0.00011 seconds |
74
+ ./spec/aircana/configuration_spec.rb[1:5:1] | passed | 0.00008 seconds |
75
+ ./spec/aircana/configuration_spec.rb[1:5:2] | passed | 0.00008 seconds |
76
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:1:1] | passed | 0.00158 seconds |
77
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:1:2] | passed | 0.00038 seconds |
78
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:1:3] | passed | 0.0012 seconds |
79
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:2:1] | passed | 0.00022 seconds |
80
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:2:2] | passed | 0.00014 seconds |
81
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:2:3] | passed | 0.00017 seconds |
82
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:3:1] | passed | 0.00039 seconds |
83
+ ./spec/aircana/contexts/confluence_spec.rb[1:1:3:2] | passed | 0.00039 seconds |
84
+ ./spec/aircana/contexts/local_spec.rb[1:1:1] | passed | 0.00131 seconds |
85
+ ./spec/aircana/contexts/local_spec.rb[1:1:2] | passed | 0.00122 seconds |
86
+ ./spec/aircana/contexts/local_spec.rb[1:1:3] | passed | 0.00131 seconds |
87
+ ./spec/aircana/contexts/local_spec.rb[1:1:4] | passed | 0.00118 seconds |
88
+ ./spec/aircana/contexts/local_spec.rb[1:1:5] | passed | 0.00124 seconds |
89
+ ./spec/aircana/contexts/local_spec.rb[1:1:6] | passed | 0.00137 seconds |
90
+ ./spec/aircana/contexts/local_spec.rb[1:1:7] | passed | 0.00188 seconds |
91
+ ./spec/aircana/contexts/local_spec.rb[1:1:8] | passed | 0.00129 seconds |
92
+ ./spec/aircana/contexts/manifest_spec.rb[1:1:1] | passed | 0.00107 seconds |
93
+ ./spec/aircana/contexts/manifest_spec.rb[1:1:2] | passed | 0.00111 seconds |
94
+ ./spec/aircana/contexts/manifest_spec.rb[1:2:1] | passed | 1.01 seconds |
95
+ ./spec/aircana/contexts/manifest_spec.rb[1:2:2] | passed | 0.00212 seconds |
96
+ ./spec/aircana/contexts/manifest_spec.rb[1:3:1] | passed | 0.00115 seconds |
97
+ ./spec/aircana/contexts/manifest_spec.rb[1:3:2] | passed | 0.00024 seconds |
98
+ ./spec/aircana/contexts/manifest_spec.rb[1:3:3] | passed | 0.00125 seconds |
99
+ ./spec/aircana/contexts/manifest_spec.rb[1:3:4] | passed | 0.00096 seconds |
100
+ ./spec/aircana/contexts/manifest_spec.rb[1:4:1] | passed | 0.00096 seconds |
101
+ ./spec/aircana/contexts/manifest_spec.rb[1:4:2] | passed | 0.00036 seconds |
102
+ ./spec/aircana/contexts/manifest_spec.rb[1:5:1] | passed | 0.00097 seconds |
103
+ ./spec/aircana/contexts/manifest_spec.rb[1:5:2] | passed | 0.00031 seconds |
104
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:1] | passed | 0.00026 seconds |
105
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:2] | passed | 0.00021 seconds |
106
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:3] | passed | 0.0002 seconds |
107
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:4] | passed | 0.00023 seconds |
108
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:5] | passed | 0.00022 seconds |
109
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:6] | passed | 0.00023 seconds |
110
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:7] | passed | 0.0002 seconds |
111
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:8] | passed | 0.0002 seconds |
112
+ ./spec/aircana/contexts/manifest_spec.rb[1:6:9] | passed | 0.00092 seconds |
113
+ ./spec/aircana/contexts/web_spec.rb[1:1:1] | passed | 0.00022 seconds |
114
+ ./spec/aircana/contexts/web_spec.rb[1:2:1] | passed | 0.00018 seconds |
115
+ ./spec/aircana/contexts/web_spec.rb[1:3:1:1] | passed | 0.00013 seconds |
116
+ ./spec/aircana/contexts/web_spec.rb[1:3:1:2] | passed | 0.0001 seconds |
117
+ ./spec/aircana/contexts/web_spec.rb[1:3:1:3] | passed | 0.00012 seconds |
118
+ ./spec/aircana/contexts/web_spec.rb[1:3:2:1] | passed | 0.00016 seconds |
119
+ ./spec/aircana/contexts/web_spec.rb[1:3:2:2] | passed | 0.00011 seconds |
120
+ ./spec/aircana/contexts/web_spec.rb[1:3:3:1] | passed | 0.00019 seconds |
121
+ ./spec/aircana/contexts/web_spec.rb[1:3:3:2] | passed | 0.00028 seconds |
122
+ ./spec/aircana/contexts/web_spec.rb[1:3:3:3] | passed | 0.00023 seconds |
123
+ ./spec/aircana/contexts/web_spec.rb[1:3:3:4] | passed | 0.00017 seconds |
124
+ ./spec/aircana/contexts/web_spec.rb[1:3:3:5] | passed | 0.00264 seconds |
125
+ ./spec/aircana/contexts/web_spec.rb[1:3:4:1] | passed | 0.00013 seconds |
126
+ ./spec/aircana/contexts/web_spec.rb[1:3:4:2] | passed | 0.00011 seconds |
127
+ ./spec/aircana/contexts/web_spec.rb[1:3:4:3] | passed | 0.0003 seconds |
128
+ ./spec/aircana/contexts/web_spec.rb[1:3:5:1] | passed | 0.00045 seconds |
129
+ ./spec/aircana/contexts/web_spec.rb[1:3:5:2] | passed | 0.00013 seconds |
130
+ ./spec/aircana/contexts/web_spec.rb[1:3:5:3] | passed | 0.00071 seconds |
131
+ ./spec/aircana/contexts/web_spec.rb[1:3:6:1] | passed | 0.00026 seconds |
132
+ ./spec/aircana/contexts/web_spec.rb[1:3:6:2] | passed | 0.00028 seconds |
133
+ ./spec/aircana/contexts/web_spec.rb[1:3:6:3] | passed | 0.00024 seconds |
134
+ ./spec/aircana/contexts/web_spec.rb[1:3:7:1] | passed | 0.00012 seconds |
135
+ ./spec/aircana/contexts/web_spec.rb[1:3:7:2] | passed | 0.0001 seconds |
136
+ ./spec/aircana/fzf_helper_spec.rb[1:1:1:1] | passed | 0.00017 seconds |
137
+ ./spec/aircana/fzf_helper_spec.rb[1:1:1:2] | passed | 0.00015 seconds |
138
+ ./spec/aircana/fzf_helper_spec.rb[1:1:1:3] | passed | 0.00018 seconds |
139
+ ./spec/aircana/fzf_helper_spec.rb[1:1:2:1] | passed | 0.0002 seconds |
140
+ ./spec/aircana/fzf_helper_spec.rb[1:1:3:1] | passed | 0.00039 seconds |
141
+ ./spec/aircana/fzf_helper_spec.rb[1:2:1:1] | passed | 0.00019 seconds |
142
+ ./spec/aircana/fzf_helper_spec.rb[1:2:1:2] | passed | 0.00018 seconds |
143
+ ./spec/aircana/fzf_helper_spec.rb[1:2:1:3] | passed | 0.00017 seconds |
144
+ ./spec/aircana/fzf_helper_spec.rb[1:2:2:1] | passed | 0.00016 seconds |
145
+ ./spec/aircana/fzf_helper_spec.rb[1:2:2:2] | passed | 0.00012 seconds |
146
+ ./spec/aircana/generators/agents_generator_spec.rb[1:1:1] | passed | 0.00005 seconds |
147
+ ./spec/aircana/generators/agents_generator_spec.rb[1:2:1] | passed | 0.00023 seconds |
148
+ ./spec/aircana/generators/agents_generator_spec.rb[1:3:1:1] | passed | 0.00007 seconds |
149
+ ./spec/aircana/generators/agents_generator_spec.rb[1:3:1:2] | passed | 0.00007 seconds |
150
+ ./spec/aircana/generators/agents_generator_spec.rb[1:4:1:1] | passed | 0.00006 seconds |
151
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:1:1] | passed | 0.00005 seconds |
152
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:2:1] | passed | 0.00004 seconds |
153
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:3:1] | passed | 0.00058 seconds |
154
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:3:2] | passed | 0.00032 seconds |
155
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:4:1] | passed | 0.00015 seconds |
156
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:5:1:1] | passed | 0.00014 seconds |
157
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:5:2:1] | passed | 0.00006 seconds |
158
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:6:1] | passed | 0.00089 seconds |
159
+ ./spec/aircana/generators/hooks_generator_spec.rb[1:7:1] | passed | 0.00022 seconds |
160
+ ./spec/aircana/generators/plan_command_generator_spec.rb[1:1:1] | passed | 0.00063 seconds |
161
+ ./spec/aircana/generators/plan_command_generator_spec.rb[1:1:2] | passed | 0.00042 seconds |
162
+ ./spec/aircana/generators/plan_command_generator_spec.rb[1:1:3] | passed | 0.00036 seconds |
163
+ ./spec/aircana/generators/plan_command_generator_spec.rb[1:2:1] | passed | 0.0001 seconds |
164
+ ./spec/aircana/generators/plan_command_generator_spec.rb[1:2:2] | passed | 0.00018 seconds |
165
+ ./spec/aircana/generators/write_plan_command_generator_spec.rb[1:1:1] | passed | 0.00022 seconds |
166
+ ./spec/aircana/generators/write_plan_command_generator_spec.rb[1:2:1] | passed | 0.00054 seconds |
167
+ ./spec/aircana/generators/write_plan_command_generator_spec.rb[1:2:2] | passed | 0.00009 seconds |
168
+ ./spec/aircana/human_logger_spec.rb[1:1:1] | passed | 0.00006 seconds |
169
+ ./spec/aircana/human_logger_spec.rb[1:2:1] | passed | 0.00004 seconds |
170
+ ./spec/aircana/human_logger_spec.rb[1:3:1] | passed | 0.00004 seconds |
171
+ ./spec/aircana/human_logger_spec.rb[1:4:1] | passed | 0.00004 seconds |
172
+ ./spec/aircana/human_logger_spec.rb[1:5:1] | passed | 0.00003 seconds |
173
+ ./spec/aircana/human_logger_spec.rb[1:5:2] | passed | 0.00004 seconds |
174
+ ./spec/aircana/human_logger_spec.rb[1:5:3] | passed | 0.00003 seconds |
175
+ ./spec/aircana/human_logger_spec.rb[1:5:4] | passed | 0.00004 seconds |
176
+ ./spec/aircana/human_logger_spec.rb[1:5:5] | passed | 0.00012 seconds |
177
+ ./spec/aircana/human_logger_spec.rb[1:5:6] | passed | 0.00004 seconds |
178
+ ./spec/aircana/human_logger_spec.rb[1:5:7] | passed | 0.00004 seconds |
179
+ ./spec/aircana/human_logger_spec.rb[1:6:1] | passed | 0.00003 seconds |
180
+ ./spec/aircana/llm/claude_client_spec.rb[1:1:1:1] | passed | 0.00042 seconds |
181
+ ./spec/aircana/llm/claude_client_spec.rb[1:1:1:2] | passed | 0.00037 seconds |
182
+ ./spec/aircana/llm/claude_client_spec.rb[1:1:1:3] | passed | 0.00038 seconds |
183
+ ./spec/aircana/llm/claude_client_spec.rb[1:1:1:4] | passed | 0.00034 seconds |
184
+ ./spec/aircana/llm/claude_client_spec.rb[1:1:2:1] | passed | 0.00038 seconds |
185
+ ./spec/aircana/llm/claude_client_spec.rb[1:1:2:2] | passed | 0.00035 seconds |
186
+ ./spec/aircana/llm/claude_client_spec.rb[1:1:3:1] | passed | 0.00036 seconds |
187
+ ./spec/aircana/llm/claude_client_spec.rb[1:2:1] | passed | 0.00034 seconds |
188
+ ./spec/aircana/llm/claude_client_spec.rb[1:2:2] | passed | 0.00033 seconds |
189
+ ./spec/aircana/llm/claude_client_spec.rb[1:3:1:1] | passed | 0.00022 seconds |
190
+ ./spec/aircana/llm/claude_client_spec.rb[1:3:1:2] | passed | 0.00022 seconds |
191
+ ./spec/aircana/system_checker_spec.rb[1:1:1:1] | passed | 0.00032 seconds |
192
+ ./spec/aircana/system_checker_spec.rb[1:1:2:1] | passed | 0.00044 seconds |
193
+ ./spec/aircana/system_checker_spec.rb[1:1:3:1] | passed | 0.00065 seconds |
194
+ ./spec/aircana/system_checker_spec.rb[1:2:1] | passed | 0.00024 seconds |
195
+ ./spec/aircana/system_checker_spec.rb[1:2:2] | passed | 0.00022 seconds |
196
+ ./spec/aircana/system_checker_spec.rb[1:3:1] | passed | 0.00024 seconds |
197
+ ./spec/aircana/system_checker_spec.rb[1:3:2] | passed | 0.00044 seconds |
198
+ ./spec/aircana/system_checker_spec.rb[1:3:3] | passed | 0.00031 seconds |
199
+ ./spec/aircana/system_checker_spec.rb[1:3:4] | passed | 0.00028 seconds |
200
+ ./spec/aircana/system_checker_spec.rb[1:3:5] | passed | 0.00018 seconds |
201
+ ./spec/aircana_spec.rb[1:1] | passed | 0.00004 seconds |
202
+ ./spec/aircana_spec.rb[1:2] | passed | 0.00069 seconds |
data/README.md CHANGED
@@ -67,6 +67,7 @@ Create Claude Code agents with:
67
67
  ### Knowledge Sources
68
68
  - **Relevant Files**: Current working set managed by Aircana (independent feature)
69
69
  - **Confluence Pages**: Fetched based on agent labels (agent feature, requires setup)
70
+ - **Web URLs**: Any web content added to agent knowledge bases (HTML converted to Markdown)
70
71
  - **Local Context**: Project-specific files and configurations
71
72
 
72
73
  ## What Aircana Does
@@ -97,9 +98,9 @@ Create Claude Code agents with:
97
98
  aircana files add # Interactive selection
98
99
  ```
99
100
 
100
- Then in Claude Code, include them with whenever you want to reload the files into the current context:
101
+ Then in Claude Code, include them whenever you want to reload the files into the current context:
101
102
  ```
102
- /air-add-relevant-files
103
+ /add-relevant-files
103
104
  ```
104
105
 
105
106
  4. **Create an agent** (optional, but powerful with Confluence):
@@ -214,14 +215,23 @@ In Confluence, add the label `backend-api` (matching your agent name) to relevan
214
215
 
215
216
  Repeat for all pages you want the agent to know about.
216
217
 
217
- ### 3. Sync Knowledge
218
+ ### 3. Add Knowledge Sources
218
219
 
220
+ **From Confluence:**
219
221
  ```bash
220
222
  aircana agents refresh backend-api
221
223
  ```
222
224
 
223
225
  This downloads all Confluence pages labeled `backend-api` and makes them available to your agent.
224
226
 
227
+ **From Web URLs:**
228
+ ```bash
229
+ aircana agents add-url backend-api https://docs.example.com/api-guide
230
+ aircana agents add-url backend-api https://blog.example.com/best-practices
231
+ ```
232
+
233
+ This fetches web content and converts it to Markdown for your agent's knowledge base.
234
+
225
235
  ### 4. Use the Agent
226
236
 
227
237
  Once created with a good description, Claude Code will automatically use your agent when appropriate during conversations. You can also explicitly request a specific agent:
@@ -236,12 +246,14 @@ The agent will have access to all the Confluence knowledge you synced.
236
246
 
237
247
  ### 5. Update Knowledge
238
248
 
239
- Whenever you update Confluence pages or add new ones with the agent label:
249
+ Whenever you update Confluence pages, add new ones with the agent label, or want to refresh web content:
240
250
 
241
251
  ```bash
242
252
  aircana agents refresh backend-api
243
253
  ```
244
254
 
255
+ This refreshes both Confluence pages and web URLs associated with the agent.
256
+
245
257
 
246
258
  ## All Commands
247
259
 
@@ -256,7 +268,8 @@ aircana files list # Show current relevant files
256
268
  ### Agent Management
257
269
  ```bash
258
270
  aircana agents create # Create new agent interactively
259
- aircana agents refresh [AGENT] # Sync agent knowledge from Confluence
271
+ aircana agents refresh [AGENT] # Sync agent knowledge from Confluence and web sources
272
+ aircana agents add-url [AGENT] [URL] # Add a web URL to an agent's knowledge base
260
273
  aircana agents list # List all configured agents
261
274
  ```
262
275
 
@@ -3,6 +3,7 @@
3
3
  require_relative "../../generators/relevant_files_command_generator"
4
4
  require_relative "../../generators/relevant_files_verbose_results_generator"
5
5
  require_relative "../../generators/plan_command_generator"
6
+ require_relative "../../generators/write_plan_command_generator"
6
7
  require_relative "../../generators/agents_generator"
7
8
  require_relative "../../generators/hooks_generator"
8
9
  require_relative "../../generators/project_config_generator"
@@ -15,7 +16,8 @@ module Aircana
15
16
  @generators ||= [
16
17
  Aircana::Generators::RelevantFilesVerboseResultsGenerator.new,
17
18
  Aircana::Generators::RelevantFilesCommandGenerator.new,
18
- Aircana::Generators::PlanCommandGenerator.new
19
+ Aircana::Generators::PlanCommandGenerator.new,
20
+ Aircana::Generators::WritePlanCommandGenerator.new
19
21
  ]
20
22
  end
21
23
 
@@ -7,7 +7,7 @@ module Aircana
7
7
  class AgentsGenerator < BaseGenerator
8
8
  attr_reader :agent_name, :short_description, :description, :model, :color, :default_agent
9
9
 
10
- AVAILABLE_DEFAULT_AGENTS = ["planner"].freeze
10
+ AVAILABLE_DEFAULT_AGENTS = %w[planner jira].freeze
11
11
 
12
12
  class << self
13
13
  def create_default_agent(agent_name)
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../generators"
4
+
5
+ module Aircana
6
+ module Generators
7
+ class WritePlanCommandGenerator < BaseGenerator
8
+ def initialize(file_in: nil, file_out: nil)
9
+ super(
10
+ file_in: file_in || default_template_path,
11
+ file_out: file_out || default_output_path
12
+ )
13
+ end
14
+
15
+ private
16
+
17
+ def default_template_path
18
+ File.join(File.dirname(__FILE__), "..", "templates", "commands", "write_plan.erb")
19
+ end
20
+
21
+ def default_output_path
22
+ File.join(Aircana.configuration.output_dir, "commands", "air-write-plan.md")
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: jira
3
+ description: Specialized agent for Jira MCP tool interactions, handles reading and writing tickets efficiently
4
+ model: inherit
5
+ color: blue
6
+ ---
7
+
8
+ <%= helpers.model_instructions("You are a specialized Jira Integration Agent focused exclusively on Jira MCP tool operations to maximize token efficiency.
9
+
10
+ CORE RESPONSIBILITIES:
11
+ - Read Jira ticket details using mcp__jira__ tools
12
+ - Create and update Jira tickets
13
+ - Attach markdown plans to tickets
14
+ - Search for tickets using JQL
15
+ - Handle all Jira API interactions
16
+
17
+ IMPORTANT INSTRUCTIONS:
18
+ - Use ONLY the mcp__jira__ prefixed tools for all operations
19
+ - Be concise in responses - focus on data, not explanations
20
+ - When reading tickets, extract only the essential information requested
21
+ - When writing plans to tickets, use markdown attachments for better formatting
22
+ - Always include ticket key/ID in responses for easy reference
23
+
24
+ JIRA MCP TOOLS AVAILABLE:
25
+ - mcp__jira__getJiraIssue - Get ticket details
26
+ - mcp__jira__createJiraIssue - Create new tickets
27
+ - mcp__jira__editJiraIssue - Update existing tickets
28
+ - mcp__jira__searchJiraIssuesUsingJql - Search tickets
29
+ - mcp__jira__addCommentToJiraIssue - Add comments
30
+ - mcp__jira__transitionJiraIssue - Change ticket status
31
+ - mcp__jira__getTransitionsForJiraIssue - Get available transitions
32
+
33
+ WORKFLOW PATTERNS:
34
+ 1. For ticket reading: Extract key details (summary, description, status, assignee, priority)
35
+ 2. For plan writing: Create markdown attachment with frontmatter and structured content
36
+ 3. For ticket creation: Gather required fields first, then create with proper formatting
37
+ 4. Always provide ticket URL when available for easy access
38
+
39
+ TOKEN OPTIMIZATION:
40
+ - Provide structured, concise responses
41
+ - Avoid unnecessary explanations or context
42
+ - Focus on actionable data and results", important: true) %>
43
+
44
+ Always check your knowledge base first for Jira-specific guidance and best practices.
@@ -8,48 +8,38 @@ color: blue
8
8
  <%= helpers.model_instructions("You are a Strategic Project Planning Agent that creates comprehensive implementation plans by integrating with Jira tickets and leveraging other specialized sub-agents' knowledge.
9
9
 
10
10
  MANDATORY WORKFLOW:
11
- 1. JIRA TICKET VERIFICATION:
12
- - If no Jira ticket was provided, ask if the user wants to create a new ticket or provide a ticket number
13
- - If a Jira ticket is provided, use the built-in `jira` mcp tool to fetch the ticket details
14
- - If user doesn't have the jira mcp tool installed, prompt them to run `aircana doctor` for setup details
15
-
16
- 2. REQUIREMENTS GATHERING:
17
- - If ticket details are available, read the description from Jira
18
- - If no ticket or description, ask the user for a description of the issue
19
- - Ask the user to provide references to any files they know might be part of the solution
20
- - Read all referenced files to understand the codebase context
21
-
22
- 3. SUB-AGENT CONSULTATION:
23
- - Consider the ticket description and potentially relevant files
24
- - Identify all available sub-agents installed in Claude Code that may be helpful for planning
25
- - For each relevant agent, present the ticket description and ask specifically for input on the solution using their knowledge base
26
- - Run these sub-agent consultation processes in parallel when possible. IMPORTANT: Always ask the sub-agents to consult their knowledge bases on the file system.
27
- - Gather insights from specialized domains (testing, security, frontend, backend, etc.)
28
-
29
- 4. PLANNING MODE EXECUTION:
30
- - Enter Claude Code planning mode
31
- - Synthesize information from ticket description, relevant files, and sub-agent consultations
32
- - Create a comprehensive implementation plan
33
- - Present the proposed plan to the user for input and iteration
34
-
35
- 5. PLAN FINALIZATION:
36
- - Iterate with the user to refine and finalize the plan
37
- - Ensure all technical considerations and sub-agent recommendations are incorporated
38
- - Validate the plan addresses all requirements from the Jira ticket
39
-
40
- 6. JIRA INTEGRATION:
41
- - Create or update the Jira ticket with a new markdown attachment describing the final plan
42
- - The plan should be in markdown format with proper frontmatter including:
43
- * List of consulted sub-agents (frontmatter)
44
- * List of relevant files referenced (frontmatter)
45
- - The markdown body should contain:
46
- * Detailed implementation steps as a todo list using `[]` format for easy LLM consumption
47
- * Technical considerations and dependencies
11
+
12
+ STEP 1: CREATE TODO LIST FILE
13
+ First, create a todo list file with the following tasks enumerated in order:
14
+
15
+ 1. Use Task tool with subagent_type 'jira' to verify Jira ticket information (or ask user to create/provide ticket)
16
+ 2. Gather requirements from ticket or user description
17
+ 3. Identify relevant files mentioned by user and read them for context
18
+ 4. Identify all available Claude Code sub-agents that can help with planning
19
+ 5. Consult each relevant sub-agent for specialized input (run in parallel when possible)
20
+ 6. Enter Claude Code planning mode and synthesize all gathered information
21
+ 7. Create comprehensive implementation plan
22
+ 8. Present plan to user for feedback and iteration
23
+ 9. Finalize plan incorporating user feedback and technical considerations
24
+ 10. Suggest user runs '/air-write-plan' command to save the plan to Jira ticket
25
+ 11. Notify the user planning is complete. Do not begin implementation
26
+
27
+ STEP 2: EXECUTE EACH TASK IN ORDER
28
+ Work through each task in the todo list sequentially:
29
+ - Mark each task as 'in_progress' when you start it
30
+ - Mark each task as 'completed' when finished
31
+ - Continue until all tasks are done
32
+
33
+ TASK DETAILS:
34
+ - JIRA INTEGRATION: Always delegate Jira operations to the 'jira' sub-agent using Task tool with subagent_type 'jira'. If user doesn't have jira mcp tool, prompt them to run `aircana doctor`
35
+ - SUB-AGENT CONSULTATION: Always ask sub-agents to consult their knowledge bases on the file system for specialized input
36
+ - PLANNING MODE: Enter Claude Code planning mode to synthesize information and create the plan
37
+ - PLAN OUTPUT: Final plan should be markdown with frontmatter (consulted sub-agents, relevant files) and body with implementation steps as todo list using `[]` format
48
38
 
49
39
  IMPORTANT INSTRUCTIONS:
50
- - Always start by checking for Jira ticket information
51
- - Leverage the expertise of available sub-agents rather than working in isolation
52
- - Use proper markdown formatting for Jira attachments
40
+ - ALWAYS start by creating the todo list file before doing any other work
41
+ - Execute tasks in the exact order specified in the todo list
42
+ - Leverage specialized sub-agent expertise rather than working in isolation
53
43
  - Focus on creating implementable, step-by-step plans", important: true) %>
54
44
 
55
45
  Always identify available sub-agents and leverage their specialized knowledge to create more comprehensive and accurate plans.
@@ -1,3 +1,28 @@
1
1
  <%= helpers.model_instructions(
2
- "Use the Task tool with subagent_type 'planner' to invoke the planner agent. #{$ARGUMENTS.nil? || $ARGUMENTS.empty? ? 'Ask the user to provide a Jira ticket or create a comprehensive implementation plan.' : "Plan for Jira ticket: $ARGUMENTS"}"
2
+ "Use the Task tool with subagent_type 'planner' to invoke the planner agent with the following explicit instructions:
3
+
4
+ STEP 1: CREATE TODO LIST FILE
5
+ First, create a todo list file with the following tasks enumerated in order:
6
+
7
+ 1. Use Task tool with subagent_type 'jira' to verify Jira ticket information (or ask user to create/provide ticket)
8
+ 2. Gather requirements from ticket or user description
9
+ 3. Identify relevant files mentioned by user and read them for context
10
+ 4. Identify all available Claude Code sub-agents that can help with planning
11
+ 5. Consult each relevant sub-agent for specialized input (run in parallel when possible)
12
+ 6. Enter Claude Code planning mode and synthesize all gathered information
13
+ 7. Create comprehensive implementation plan
14
+ 8. Present plan to user for feedback and iteration
15
+ 9. Finalize plan incorporating user feedback and technical considerations
16
+ 10. Suggest user runs '/air-write-plan' command to save the plan to Jira ticket
17
+ 11. Notify the user planning is complete. Do not begin implementation
18
+
19
+ STEP 2: EXECUTE EACH TASK IN ORDER
20
+ Work through each task in the todo list sequentially:
21
+ - Mark each task as 'in_progress' when you start it
22
+ - Mark each task as 'completed' when finished
23
+ - Continue until all tasks are done
24
+
25
+ IMPORTANT: Always delegate Jira operations to the 'jira' sub-agent using Task tool with subagent_type 'jira'.
26
+
27
+ #{$ARGUMENTS.nil? || $ARGUMENTS.empty? ? 'Ask the user to provide a Jira ticket or create a comprehensive implementation plan.' : "Plan for Jira ticket: $ARGUMENTS"}"
3
28
  ) %>
@@ -0,0 +1,16 @@
1
+ <%= helpers.model_instructions(
2
+ "Use the Task tool with subagent_type 'jira' to write the implementation plan to a Jira ticket.
3
+
4
+ INSTRUCTIONS FOR JIRA AGENT:
5
+ 1. Read the implementation plan from the current context (look for recent planning output or ask user to provide plan)
6
+ 2. #{$ARGUMENTS.nil? || $ARGUMENTS.empty? ? 'Ask user for Jira ticket key/ID to update' : "Update Jira ticket: $ARGUMENTS"}
7
+ 3. Create or update the ticket with the plan as a markdown attachment
8
+ 4. Format the plan with proper frontmatter including:
9
+ - Consulted sub-agents
10
+ - Relevant files analyzed
11
+ - Planning timestamp
12
+ 5. Include implementation steps as todo list using `[]` format in the body
13
+ 6. Provide the ticket URL for easy access
14
+
15
+ IMPORTANT: Delegate all Jira operations to the 'jira' sub-agent using Task tool with subagent_type 'jira'."
16
+ ) %>
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Aircana
4
- VERSION = "1.4.0"
4
+ VERSION = "1.5.0.rc2"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aircana
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.5.0.rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Weston Dransfield
@@ -154,6 +154,7 @@ files:
154
154
  - lib/aircana/generators/project_config_generator.rb
155
155
  - lib/aircana/generators/relevant_files_command_generator.rb
156
156
  - lib/aircana/generators/relevant_files_verbose_results_generator.rb
157
+ - lib/aircana/generators/write_plan_command_generator.rb
157
158
  - lib/aircana/human_logger.rb
158
159
  - lib/aircana/initializers.rb
159
160
  - lib/aircana/llm/claude_client.rb
@@ -161,9 +162,11 @@ files:
161
162
  - lib/aircana/symlink_manager.rb
162
163
  - lib/aircana/system_checker.rb
163
164
  - lib/aircana/templates/agents/base_agent.erb
165
+ - lib/aircana/templates/agents/defaults/jira.erb
164
166
  - lib/aircana/templates/agents/defaults/planner.erb
165
167
  - lib/aircana/templates/commands/add_relevant_files.erb
166
168
  - lib/aircana/templates/commands/plan.erb
169
+ - lib/aircana/templates/commands/write_plan.erb
167
170
  - lib/aircana/templates/hooks/bundle_install.erb
168
171
  - lib/aircana/templates/hooks/notification_sqs.erb
169
172
  - lib/aircana/templates/hooks/post_tool_use.erb