@codedrifters/configulator 0.0.215 → 0.0.216
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/lib/index.d.mts +4 -2
- package/lib/index.d.ts +4 -2
- package/lib/index.js +125 -33
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +125 -33
- package/lib/index.mjs.map +1 -1
- package/package.json +1 -1
package/lib/index.mjs
CHANGED
|
@@ -1629,7 +1629,7 @@ var bcmWriterBundle = {
|
|
|
1629
1629
|
// src/agent/bundles/company-profile.ts
|
|
1630
1630
|
var companyProfileAnalystSubAgent = {
|
|
1631
1631
|
name: "company-profile-analyst",
|
|
1632
|
-
description: "Researches an external company (competitor, vendor, partner, customer, etc.) from public sources and produces a structured markdown profile
|
|
1632
|
+
description: "Researches an external company (competitor, vendor, partner, customer, etc.) from public sources and produces a structured markdown profile, then enqueues downstream `people:research` and `software:research` issues for notable people and software products surfaced during profiling. One company per session, tracked by company:* GitHub issue labels.",
|
|
1633
1633
|
model: AGENT_MODEL.POWERFUL,
|
|
1634
1634
|
maxTurns: 80,
|
|
1635
1635
|
platforms: { cursor: { exclude: true } },
|
|
@@ -1672,7 +1672,10 @@ var companyProfileAnalystSubAgent = {
|
|
|
1672
1672
|
"6. **Follow-up, don't widen scope.** If the session turns up adjacent",
|
|
1673
1673
|
" research questions (a key person worth profiling, a product worth",
|
|
1674
1674
|
" evaluating), emit a follow-up issue rather than expanding the",
|
|
1675
|
-
" profile beyond its scope.",
|
|
1675
|
+
" profile beyond its scope. Notable people are handed off to the",
|
|
1676
|
+
" `people-profile` bundle via `people:research` issues; software",
|
|
1677
|
+
" products are handed off to the `software-profile` bundle via",
|
|
1678
|
+
" `software:research` issues.",
|
|
1676
1679
|
"",
|
|
1677
1680
|
"---",
|
|
1678
1681
|
"",
|
|
@@ -1743,6 +1746,8 @@ var companyProfileAnalystSubAgent = {
|
|
|
1743
1746
|
"| `<PROFILES_DIR>` | Final company profile files | `<COMPANY_ROOT>/profiles/` |",
|
|
1744
1747
|
"| `<NOTES_DIR>` | Research-notes files from Phase 1 | `<COMPANY_ROOT>/notes/` |",
|
|
1745
1748
|
"| `<COMPANY_SLUG>` | Short kebab-case slug identifying the company | derived from the company name |",
|
|
1749
|
+
"| `<PEOPLE_PROFILES_DIR>` | Where existing people profiles live (for duplicate detection during followup) | `docs/people/profiles/` |",
|
|
1750
|
+
"| `<SOFTWARE_PROFILES_DIR>` | Where existing software profiles live (for duplicate detection during followup) | `docs/software/profiles/` |",
|
|
1746
1751
|
"",
|
|
1747
1752
|
"If `docs/project-context.md` specifies a different company-research",
|
|
1748
1753
|
"tree (for example by reusing the research-pipeline deliverables",
|
|
@@ -1924,30 +1929,91 @@ var companyProfileAnalystSubAgent = {
|
|
|
1924
1929
|
"## Phase 3: Followup (`company:followup`)",
|
|
1925
1930
|
"",
|
|
1926
1931
|
"**Goal:** Create downstream research issues for the people and",
|
|
1927
|
-
"products surfaced in the profile.",
|
|
1932
|
+
"software products surfaced in the profile. Hand the candidates off to",
|
|
1933
|
+
"the `people-profile` and `software-profile` bundles so they can be",
|
|
1934
|
+
"researched independently.",
|
|
1928
1935
|
"",
|
|
1929
1936
|
"**Budget:** No new research. Read the profile, enqueue issues, close",
|
|
1930
|
-
"the phase.",
|
|
1937
|
+
"the phase. Markdown cross-references in the profile's",
|
|
1938
|
+
"`## Follow-up Candidates` section are preserved \u2014 issue creation is",
|
|
1939
|
+
"**additive** on top of the existing notes-only behavior.",
|
|
1931
1940
|
"",
|
|
1932
1941
|
"### Steps",
|
|
1933
1942
|
"",
|
|
1934
1943
|
"1. **Read the profile file** referenced in the issue body.",
|
|
1935
1944
|
"",
|
|
1936
|
-
"2. **Enqueue people
|
|
1937
|
-
" `Follow-up Candidates > People to profile
|
|
1938
|
-
"
|
|
1939
|
-
"
|
|
1940
|
-
"
|
|
1941
|
-
"",
|
|
1942
|
-
"
|
|
1943
|
-
"
|
|
1944
|
-
"
|
|
1945
|
-
"
|
|
1946
|
-
"",
|
|
1947
|
-
"
|
|
1948
|
-
"
|
|
1949
|
-
"",
|
|
1950
|
-
"
|
|
1945
|
+
"2. **Enqueue a `people:research` issue per candidate** under",
|
|
1946
|
+
" `Follow-up Candidates > People to profile` that is worth",
|
|
1947
|
+
" downstream research. Each issue must carry:",
|
|
1948
|
+
"",
|
|
1949
|
+
" - `type:people-profile`",
|
|
1950
|
+
" - `people:research`",
|
|
1951
|
+
" - `priority:medium`",
|
|
1952
|
+
" - `status:ready`",
|
|
1953
|
+
"",
|
|
1954
|
+
" The issue body must include:",
|
|
1955
|
+
" - A **discovery source** line naming this company profile",
|
|
1956
|
+
" (`Discovered while profiling: <company name>`)",
|
|
1957
|
+
" - A link to the company profile path (`Company profile: <PROFILES_DIR>/<COMPANY_SLUG>.md`)",
|
|
1958
|
+
" - Enough identifying metadata \u2014 full name, role/title, and",
|
|
1959
|
+
" employing company \u2014 that the `people-profile-analyst` agent can",
|
|
1960
|
+
" begin research without revisiting this company profile",
|
|
1961
|
+
"",
|
|
1962
|
+
"3. **Enqueue a `software:research` issue per candidate** under",
|
|
1963
|
+
" `Follow-up Candidates > Products / software to evaluate` that is",
|
|
1964
|
+
" worth downstream research. Each issue must carry:",
|
|
1965
|
+
"",
|
|
1966
|
+
" - `type:software-profile`",
|
|
1967
|
+
" - `software:research`",
|
|
1968
|
+
" - `priority:medium`",
|
|
1969
|
+
" - `status:ready`",
|
|
1970
|
+
"",
|
|
1971
|
+
" The issue body must include:",
|
|
1972
|
+
" - A **discovery source** line naming this company profile",
|
|
1973
|
+
" (`Discovered while profiling: <company name>`)",
|
|
1974
|
+
" - A link to the company profile path (`Company profile: <PROFILES_DIR>/<COMPANY_SLUG>.md`)",
|
|
1975
|
+
" - Enough identifying metadata \u2014 product name and vendor (usually",
|
|
1976
|
+
" this company if it builds the product, otherwise the upstream",
|
|
1977
|
+
" vendor) \u2014 that the `software-profile-analyst` agent can begin",
|
|
1978
|
+
" research without revisiting this company profile",
|
|
1979
|
+
"",
|
|
1980
|
+
"4. **Avoid duplicates.** Before opening a `people:research` or",
|
|
1981
|
+
" `software:research` issue, verify no existing profile covers the",
|
|
1982
|
+
" candidate:",
|
|
1983
|
+
"",
|
|
1984
|
+
" - People: check `<PEOPLE_PROFILES_DIR>/` for a matching profile",
|
|
1985
|
+
" file (by derived slug or by searching the directory for the",
|
|
1986
|
+
" person's name). If a profile exists, reuse it as a cross-reference",
|
|
1987
|
+
" only \u2014 **do not** open a new `people:research` issue.",
|
|
1988
|
+
" - Software: check `<SOFTWARE_PROFILES_DIR>/` the same way. If a",
|
|
1989
|
+
" profile exists, reuse it as a cross-reference only \u2014 **do not**",
|
|
1990
|
+
" open a new `software:research` issue.",
|
|
1991
|
+
" - Also scan open issues carrying the matching `people:research` or",
|
|
1992
|
+
" `software:research` label so this phase never re-opens research",
|
|
1993
|
+
" that is already queued.",
|
|
1994
|
+
"",
|
|
1995
|
+
"5. **Exercise restraint.** Only create downstream issues for people",
|
|
1996
|
+
" and software products that are **genuinely relevant** to the",
|
|
1997
|
+
" framing of this profile \u2014 executives, founders, and decision-makers",
|
|
1998
|
+
" for people; products the company builds or materially depends on",
|
|
1999
|
+
" for software. Do **not** open issues for every name mentioned in",
|
|
2000
|
+
" passing, every SaaS tool listed in a job ad, or every tangential",
|
|
2001
|
+
" partner. When in doubt, leave the candidate as a markdown",
|
|
2002
|
+
" cross-reference in the profile and skip the downstream issue.",
|
|
2003
|
+
"",
|
|
2004
|
+
"6. **Assume the peers are present.** This pipeline assumes the",
|
|
2005
|
+
" `people-profile` and `software-profile` bundles are enabled in the",
|
|
2006
|
+
" consuming project. If a consuming project has disabled one of",
|
|
2007
|
+
" them, flag the followup issue with `status:needs-attention` and",
|
|
2008
|
+
" list the candidates that could not be routed \u2014 never invent an",
|
|
2009
|
+
" alternative label taxonomy.",
|
|
2010
|
+
"",
|
|
2011
|
+
"7. **Cross-link** \u2014 update the profile's `## Follow-up Candidates`",
|
|
2012
|
+
" section so each entry references its newly-created issue number",
|
|
2013
|
+
" (or the existing profile path, for candidates that were skipped",
|
|
2014
|
+
" because a profile already exists).",
|
|
2015
|
+
"",
|
|
2016
|
+
"8. **Commit and push** (if the profile was updated). Close the",
|
|
1951
2017
|
" followup issue.",
|
|
1952
2018
|
"",
|
|
1953
2019
|
"---",
|
|
@@ -1959,9 +2025,17 @@ var companyProfileAnalystSubAgent = {
|
|
|
1959
2025
|
"- `<NOTES_DIR>/` \u2014 research-notes files (Phase 1)",
|
|
1960
2026
|
"- `<PROFILES_DIR>/` \u2014 company profiles (Phase 2, updated in Phase 3)",
|
|
1961
2027
|
"",
|
|
1962
|
-
"
|
|
1963
|
-
"
|
|
1964
|
-
"
|
|
2028
|
+
"In Phase 3, this agent also **creates `people:research` and",
|
|
2029
|
+
"`software:research` issues** for people and software products",
|
|
2030
|
+
"surfaced in the profile. It never writes the downstream profiles",
|
|
2031
|
+
"themselves \u2014 those are the responsibility of the",
|
|
2032
|
+
"`people-profile-analyst` and `software-profile-analyst` agents, which",
|
|
2033
|
+
"pick up the issues this pipeline creates.",
|
|
2034
|
+
"",
|
|
2035
|
+
"The pipeline produces **company profiles and notes only**. Deeper",
|
|
2036
|
+
"research on people or products is delegated to downstream research",
|
|
2037
|
+
"pipelines via `people:research` and `software:research` issues \u2014 this",
|
|
2038
|
+
"agent never writes person profiles, software profiles, product",
|
|
1965
2039
|
"evaluations, or comparative analyses itself. Keep this boundary clean",
|
|
1966
2040
|
"so the company-profile pipeline stays generic.",
|
|
1967
2041
|
"",
|
|
@@ -1977,10 +2051,23 @@ var companyProfileAnalystSubAgent = {
|
|
|
1977
2051
|
"- **No assumed competition.** Never call a company a competitor unless",
|
|
1978
2052
|
" the invoking issue body or the consuming project's configuration",
|
|
1979
2053
|
" says so.",
|
|
1980
|
-
"- **
|
|
1981
|
-
"
|
|
1982
|
-
"
|
|
1983
|
-
"
|
|
2054
|
+
"- **Delegate, don't duplicate.** People and software products",
|
|
2055
|
+
" surfaced during profiling are handed off to the `people-profile`",
|
|
2056
|
+
" and `software-profile` bundles via `people:research` and",
|
|
2057
|
+
" `software:research` issues in Phase 3 \u2014 never inlined as person or",
|
|
2058
|
+
" software profiles in this pipeline.",
|
|
2059
|
+
"- **Check before enqueueing.** Before opening a `people:research` or",
|
|
2060
|
+
" `software:research` issue, verify no existing profile or open",
|
|
2061
|
+
" research issue already covers the candidate. Reuse existing",
|
|
2062
|
+
" profiles as cross-references rather than re-queuing research.",
|
|
2063
|
+
"- **Restrain the queue.** Only enqueue downstream research for people",
|
|
2064
|
+
" and products that are genuinely relevant to the framing of this",
|
|
2065
|
+
" profile. Do not open issues for every name or product mentioned in",
|
|
2066
|
+
" passing.",
|
|
2067
|
+
"- **Produce profiles, not requirement or evaluation documents.** Do",
|
|
2068
|
+
" not open `type:requirement` or formal evaluation issues from this",
|
|
2069
|
+
" pipeline. Follow-up research is scoped through `people:research`",
|
|
2070
|
+
" and `software:research` only."
|
|
1984
2071
|
].join("\n")
|
|
1985
2072
|
};
|
|
1986
2073
|
var profileCompanySkill = {
|
|
@@ -2032,15 +2119,18 @@ var profileCompanySkill = {
|
|
|
2032
2119
|
"",
|
|
2033
2120
|
"- A research-notes file under the project's notes directory",
|
|
2034
2121
|
"- A single company profile under the profiles directory",
|
|
2035
|
-
"-
|
|
2036
|
-
"
|
|
2037
|
-
"-
|
|
2038
|
-
"
|
|
2122
|
+
"- `people:research` issues for notable people surfaced in the profile",
|
|
2123
|
+
" (handed off to the `people-profile` bundle)",
|
|
2124
|
+
"- `software:research` issues for software products surfaced in the",
|
|
2125
|
+
" profile (handed off to the `software-profile` bundle)",
|
|
2126
|
+
"- This pipeline produces **company profiles only** \u2014 it does not",
|
|
2127
|
+
" write person profiles, software profiles, product evaluations, or",
|
|
2128
|
+
" comparative analyses itself."
|
|
2039
2129
|
].join("\n")
|
|
2040
2130
|
};
|
|
2041
2131
|
var companyProfileBundle = {
|
|
2042
2132
|
name: "company-profile",
|
|
2043
|
-
description: "Company research and profiling pipeline: research, draft profile, followup. Enabled by default; domain-neutral; filesystem-durable between phases.",
|
|
2133
|
+
description: "Company research and profiling pipeline: research, draft profile, followup. Enabled by default; domain-neutral; filesystem-durable between phases. Phase 3 (Followup) hands surfaced people and software products off to the `people-profile` and `software-profile` bundles via `people:research` and `software:research` issues.",
|
|
2044
2134
|
appliesWhen: () => true,
|
|
2045
2135
|
rules: [
|
|
2046
2136
|
{
|
|
@@ -2057,8 +2147,10 @@ var companyProfileBundle = {
|
|
|
2057
2147
|
"`company:followup`. All issues carry `type:company-profile`.",
|
|
2058
2148
|
"",
|
|
2059
2149
|
"The pipeline produces **company profiles only**. Deeper research",
|
|
2060
|
-
"on people
|
|
2061
|
-
"
|
|
2150
|
+
"on notable people and software products surfaced while profiling",
|
|
2151
|
+
"is delegated to the `people-profile` and `software-profile`",
|
|
2152
|
+
"bundles via `people:research` and `software:research` issues",
|
|
2153
|
+
"opened during Phase 3 (Followup).",
|
|
2062
2154
|
"",
|
|
2063
2155
|
"See the `company-profile-analyst` agent definition for full",
|
|
2064
2156
|
"workflow details, default paths, the company-type taxonomy, and",
|