pi-tandem 0.6.0 → 0.6.2
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/README.md
CHANGED
|
@@ -60,6 +60,10 @@ The "lazy senior" part of the coding skill is adapted from [ponytail](https://gi
|
|
|
60
60
|
|
|
61
61
|
The brainstorm skill's interview method (facts vs. decisions, one question at a time, throwaway probes) is inspired by ideas from the brainstorming skill in [superpowers](https://github.com/obra/superpowers) by obra and the grilling skill in [skills](https://github.com/mattpocock/skills) by mattpocock (both MIT).
|
|
62
62
|
|
|
63
|
+
## Contributing
|
|
64
|
+
|
|
65
|
+
See [CONTRIBUTING.md](https://github.com/skhoroshavin/tandem-skills/blob/main/CONTRIBUTING.md).
|
|
66
|
+
|
|
63
67
|
## License
|
|
64
68
|
|
|
65
69
|
MIT. See [LICENSE](./LICENSE).
|
|
@@ -9,14 +9,7 @@ const prompt = filterCliTools(
|
|
|
9
9
|
);
|
|
10
10
|
|
|
11
11
|
export default function (pi: ExtensionAPI) {
|
|
12
|
-
pi.on("before_agent_start",
|
|
13
|
-
|
|
14
|
-
const idx = event.systemPrompt.indexOf(marker);
|
|
15
|
-
return {
|
|
16
|
-
systemPrompt:
|
|
17
|
-
idx === -1
|
|
18
|
-
? `${event.systemPrompt}\n\n${prompt}`
|
|
19
|
-
: event.systemPrompt.slice(0, idx) + `\n\n${prompt}` + event.systemPrompt.slice(idx),
|
|
20
|
-
};
|
|
12
|
+
pi.on("before_agent_start", (event) => {
|
|
13
|
+
event.systemPromptOptions.sections.tandem = prompt;
|
|
21
14
|
});
|
|
22
15
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-tandem",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.2",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/skhoroshavin/tandem-skills.git"
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"README.md"
|
|
23
23
|
],
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@earendil-works/pi-coding-agent": "^0.
|
|
25
|
+
"@earendil-works/pi-coding-agent": "^0.87.0",
|
|
26
26
|
"@types/node": "^26.4.1",
|
|
27
27
|
"typescript": "^7.0.2"
|
|
28
28
|
}
|
|
@@ -5,16 +5,16 @@ description: Always load first in every conversation and for every task when the
|
|
|
5
5
|
|
|
6
6
|
The user is learning a language - the target language is named in the context that triggered this skill. It is usually distinct from the user's main working language, which is either inferred from repository artifacts or stated explicitly.
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
-
|
|
8
|
+
Depending on the user's stated level, follow these rules, unless the user explicitly asks for responses in their main language:
|
|
9
|
+
- A1-B1: reply in the user's main working language, but weave in target-language inserts, always with translations. Inserts grow with the level - at A1 single familiar words and set phrases, at A2 short everyday sentences and simple questions, at B1 full simple sentences, common idioms and subordinate clauses while the main language shrinks to a frame. Every reply contains at least: a few target words at A1, one short target sentence at A2, two full target sentences (one with a subordinate clause) at B1.
|
|
10
|
+
- B2-C2: reply in the target language. Gloss only words or idioms above the user's stated level, parenthetically in the user's main language; when in doubt, do not gloss. Full translation of any reply on request.
|
|
11
|
+
|
|
12
|
+
Also:
|
|
13
|
+
- If the user does not write in the target language, your response should start with an idiomatic translation of what the user has written into the target language, complexity no more than one step above their level (if the original is beyond that, translate a simplified gist), then what the user asked for
|
|
10
14
|
- If the user writes in the target language but makes mistakes or uses phrases that a native speaker would never use - your response should start with correction, then what the user asked for
|
|
15
|
+
- Below B2 level correct only significant errors - a correction block longer than the answer teaches nothing.
|
|
11
16
|
- Correct grammar and unidiomatic phrasing only; colloquial short forms and dialects are not mistakes, leave them alone. Obvious typing slips are not mistakes either, unless they land on a wrong-but-valid word - then correct.
|
|
12
17
|
|
|
13
|
-
|
|
14
|
-
- A0-A2: reply in the user's main working language, but weave in easy phrases in the target language (always with translations - important!)
|
|
15
|
-
- B1-B2: reply in the target language, plus a translation of the reply into the user's main language
|
|
16
|
-
- C1+: always respond in the target language, but translate any specific reply on request
|
|
17
|
-
|
|
18
|
-
If the user's level is not stated, ask first, while also giving a short summary of how you are going to respond for different levels. In every mode, calibrate vocabulary and sentence complexity to the level. At low levels correct only significant errors - a correction block longer than the answer teaches nothing.
|
|
18
|
+
If the user's level is not stated, ask first, while also giving a short summary of how you are going to respond for different levels. In every mode, calibrate vocabulary and sentence complexity to the level.
|
|
19
19
|
|
|
20
20
|
All above rules are only for conversation in this chat. Documents, code, commits or any other artifacts you produce should still be in the main working language.
|