markform 0.1.14 → 0.1.16
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 +48 -39
- package/dist/ai-sdk.d.mts +3 -2
- package/dist/ai-sdk.mjs +3 -2
- package/dist/ai-sdk.mjs.map +1 -0
- package/dist/{apply-CUH_16RD.mjs → apply-CXsI5N9x.mjs} +639 -9
- package/dist/apply-CXsI5N9x.mjs.map +1 -0
- package/dist/bin.mjs +3 -2
- package/dist/bin.mjs.map +1 -0
- package/dist/{cli-ixzNVirs.mjs → cli-BsFessUW.mjs} +713 -120
- package/dist/cli-BsFessUW.mjs.map +1 -0
- package/dist/cli.d.mts +2 -1
- package/dist/cli.mjs +1 -1
- package/dist/{coreTypes-CnKsB1H3.d.mts → coreTypes-DE6Giau5.d.mts} +10 -1
- package/dist/coreTypes-DiCddBKu.mjs +2 -1
- package/dist/coreTypes-DiCddBKu.mjs.map +1 -0
- package/dist/index.d.mts +15 -2
- package/dist/index.mjs +2 -2
- package/dist/session-XDrocA3j.mjs +2 -1
- package/dist/session-XDrocA3j.mjs.map +1 -0
- package/dist/{shared-D3dNi-Gn.mjs → shared-CCq4haEV.mjs} +9 -1
- package/dist/shared-CCq4haEV.mjs.map +1 -0
- package/dist/shared-fUKfJ1UA.mjs +4 -0
- package/dist/{src-BKRKMdgR.mjs → src-Dv3IZSQU.mjs} +15 -6
- package/dist/src-Dv3IZSQU.mjs.map +1 -0
- package/docs/markform-reference.md +58 -7
- package/docs/markform-spec.md +142 -0
- package/examples/movie-research/movie-deep-research-mock-filled.form.md +64 -40
- package/examples/movie-research/movie-deep-research.form.md +58 -37
- package/examples/movie-research/movie-research-demo.form.md +9 -6
- package/examples/rejection-test/rejection-test-mock-filled.form.md +5 -7
- package/examples/rejection-test/rejection-test-mock-filled.report.md +4 -2
- package/examples/rejection-test/rejection-test-mock-filled.schema.json +1 -1
- package/examples/rejection-test/rejection-test.form.md +5 -7
- package/examples/rejection-test/rejection-test.session.yaml +10 -10
- package/examples/simple/simple-comment-syntax.form.md +79 -0
- package/examples/simple/simple-mock-filled.form.md +20 -9
- package/examples/simple/simple-mock-filled.report.md +30 -7
- package/examples/simple/simple-skipped-filled.form.md +22 -10
- package/examples/simple/simple-skipped-filled.report.md +27 -4
- package/examples/simple/simple-skipped-filled.yml +1 -1
- package/examples/simple/simple-with-skips.session.yaml +35 -19
- package/examples/simple/simple.form.md +20 -9
- package/examples/simple/simple.raw.md +18 -25
- package/examples/simple/simple.session.yaml +35 -19
- package/examples/startup-deep-research/startup-deep-research.form.md +126 -103
- package/examples/startup-research/startup-research-mock-filled.form.md +19 -10
- package/examples/startup-research/startup-research.form.md +36 -29
- package/package.json +9 -3
- package/dist/shared-CNqwaxUt.mjs +0 -4
|
@@ -18,13 +18,14 @@ markform:
|
|
|
18
18
|
6. Leave unknown fields empty - Don't guess or fabricate information
|
|
19
19
|
7. Keep descriptions concise - Aim for 100-200 words max
|
|
20
20
|
---
|
|
21
|
-
|
|
22
21
|
{% form id="startup_research" title="Startup Research Form" %}
|
|
23
22
|
|
|
24
23
|
{% description ref="startup_research" %}
|
|
25
|
-
A comprehensive research form for startup companies.
|
|
26
|
-
for capturing company websites, funding sources,
|
|
27
|
-
|
|
24
|
+
A comprehensive research form for startup companies.
|
|
25
|
+
This form demonstrates URL field types for capturing company websites, funding sources,
|
|
26
|
+
press coverage, and other web references.
|
|
27
|
+
The user provides the company name, and the agent researches and fills all remaining
|
|
28
|
+
fields.
|
|
28
29
|
{% /description %}
|
|
29
30
|
|
|
30
31
|
{% documentation ref="startup_research" %}
|
|
@@ -40,6 +41,7 @@ The user provides the company name, and the agent researches and fills all remai
|
|
|
40
41
|
- Press releases
|
|
41
42
|
- LinkedIn company pages
|
|
42
43
|
- Tech news publications
|
|
44
|
+
|
|
43
45
|
{% /documentation %}
|
|
44
46
|
|
|
45
47
|
{% group id="basic_info" title="Company Information" %}
|
|
@@ -47,7 +49,8 @@ The user provides the company name, and the agent researches and fills all remai
|
|
|
47
49
|
{% field kind="string" id="company_name" label="Company Name" role="user" required=true minLength=2 maxLength=200 %}{% /field %}
|
|
48
50
|
|
|
49
51
|
{% instructions ref="company_name" %}
|
|
50
|
-
Enter the official name of the startup company you want to research (e.g.,
|
|
52
|
+
Enter the official name of the startup company you want to research (e.g., “Stripe”,
|
|
53
|
+
“OpenAI”).
|
|
51
54
|
{% /instructions %}
|
|
52
55
|
|
|
53
56
|
{% field kind="url" id="company_website" label="Company Website" required=true %}{% /field %}
|
|
@@ -71,13 +74,14 @@ Format: YYYY, YYYY-MM, or YYYY-MM-DD (e.g., 2010, 2010-06, 2010-06-15)
|
|
|
71
74
|
{% field kind="string" id="headquarters" label="Headquarters Location" %}{% /field %}
|
|
72
75
|
|
|
73
76
|
{% instructions ref="headquarters" %}
|
|
74
|
-
Format: City, State/Country (e.g.,
|
|
77
|
+
Format: City, State/Country (e.g., “San Francisco, California”)
|
|
75
78
|
{% /instructions %}
|
|
76
79
|
|
|
77
80
|
{% field kind="string" id="company_description" label="Company Description" multiline=true maxLength=1000 %}{% /field %}
|
|
78
81
|
|
|
79
82
|
{% instructions ref="company_description" %}
|
|
80
|
-
Brief description of what the company does.
|
|
83
|
+
Brief description of what the company does.
|
|
84
|
+
100-200 words max.
|
|
81
85
|
{% /instructions %}
|
|
82
86
|
|
|
83
87
|
{% /group %}
|
|
@@ -87,16 +91,17 @@ Brief description of what the company does. 100-200 words max.
|
|
|
87
91
|
{% field kind="string" id="total_funding" label="Total Funding Raised" pattern="^\\$[0-9]+(\\.[0-9]+)?(K|M|B)?$" %}{% /field %}
|
|
88
92
|
|
|
89
93
|
{% instructions ref="total_funding" %}
|
|
90
|
-
Format: $X.XB, $XXM, or $XXK (e.g.,
|
|
94
|
+
Format: $X.XB, $XXM, or $XXK (e.g., “$1.5B”, “$50M”, “$500K”)
|
|
91
95
|
{% /instructions %}
|
|
92
96
|
|
|
93
97
|
{% field kind="string" id="latest_valuation" label="Latest Valuation" pattern="^\\$[0-9]+(\\.[0-9]+)?(K|M|B)?$" %}{% /field %}
|
|
94
98
|
|
|
95
99
|
{% instructions ref="latest_valuation" %}
|
|
96
|
-
Format: $X.XB, $XXM, or $XXK (e.g.,
|
|
100
|
+
Format: $X.XB, $XXM, or $XXK (e.g., “$10B”)
|
|
97
101
|
{% /instructions %}
|
|
98
102
|
|
|
99
103
|
{% field kind="single_select" id="funding_stage" label="Funding Stage" %}
|
|
104
|
+
|
|
100
105
|
- [ ] Pre-seed {% #pre_seed %}
|
|
101
106
|
- [ ] Seed {% #seed %}
|
|
102
107
|
- [ ] Series A {% #series_a %}
|
|
@@ -104,35 +109,36 @@ Format: $X.XB, $XXM, or $XXK (e.g., "$10B")
|
|
|
104
109
|
- [ ] Series C {% #series_c %}
|
|
105
110
|
- [ ] Series D+ {% #series_d_plus %}
|
|
106
111
|
- [ ] Public {% #public %}
|
|
112
|
+
|
|
107
113
|
{% /field %}
|
|
108
114
|
|
|
109
|
-
{% field kind="table" id="funding_rounds" label="Funding Rounds"
|
|
110
|
-
|
|
111
|
-
columnTypes=["string", "string", "string", "string", "url"]
|
|
112
|
-
minRows=0 maxRows=10 %}
|
|
115
|
+
{% field kind="table" id="funding_rounds" label="Funding Rounds" columnIds=["round_type", "date", "amount", "lead_investors", "source_url"] columnTypes=["string", "string", "string", "string", "url"] minRows=0 maxRows=10 %}
|
|
116
|
+
|
|
113
117
|
| Round Type | Date | Amount | Lead Investor(s) | Source URL |
|
|
114
118
|
|------------|------|--------|------------------|------------|
|
|
119
|
+
|
|
115
120
|
{% /field %}
|
|
116
121
|
|
|
117
122
|
{% instructions ref="funding_rounds" %}
|
|
118
|
-
List funding rounds, most recent first.
|
|
119
|
-
Example: Series B | 2023-06 | $50M | Sequoia Capital |
|
|
123
|
+
List funding rounds, most recent first.
|
|
124
|
+
Date format: YYYY-MM. Example: Series B | 2023-06 | $50M | Sequoia Capital |
|
|
125
|
+
https://techcrunch.com/...
|
|
120
126
|
{% /instructions %}
|
|
121
127
|
|
|
122
128
|
{% /group %}
|
|
123
129
|
|
|
124
130
|
{% group id="people" title="Key People" %}
|
|
125
131
|
|
|
126
|
-
{% field kind="table" id="founders" label="Founders"
|
|
127
|
-
|
|
128
|
-
columnTypes=["string", "string", "url"]
|
|
129
|
-
minRows=1 maxRows=5 %}
|
|
132
|
+
{% field kind="table" id="founders" label="Founders" columnIds=["name", "title", "linkedin"] columnTypes=["string", "string", "url"] minRows=1 maxRows=5 %}
|
|
133
|
+
|
|
130
134
|
| Name | Title | LinkedIn URL |
|
|
131
135
|
|------|-------|--------------|
|
|
136
|
+
|
|
132
137
|
{% /field %}
|
|
133
138
|
|
|
134
139
|
{% instructions ref="founders" %}
|
|
135
|
-
List founders and co-founders.
|
|
140
|
+
List founders and co-founders.
|
|
141
|
+
Include name, current title, and LinkedIn profile URL.
|
|
136
142
|
{% /instructions %}
|
|
137
143
|
|
|
138
144
|
{% field kind="number" id="employee_count" label="Employee Count" min=1 integer=true %}{% /field %}
|
|
@@ -146,6 +152,7 @@ Approximate number of employees.
|
|
|
146
152
|
{% group id="market_info" title="Market & Industry" %}
|
|
147
153
|
|
|
148
154
|
{% field kind="multi_select" id="industry_sectors" label="Industry Sectors" minSelections=1 maxSelections=5 %}
|
|
155
|
+
|
|
149
156
|
- [ ] AI/ML {% #ai_ml %}
|
|
150
157
|
- [ ] FinTech {% #fintech %}
|
|
151
158
|
- [ ] HealthTech {% #healthtech %}
|
|
@@ -156,14 +163,14 @@ Approximate number of employees.
|
|
|
156
163
|
- [ ] Developer Tools {% #devtools %}
|
|
157
164
|
- [ ] Climate Tech {% #climatetech %}
|
|
158
165
|
- [ ] Other {% #other %}
|
|
166
|
+
|
|
159
167
|
{% /field %}
|
|
160
168
|
|
|
161
|
-
{% field kind="table" id="competitors" label="Key Competitors"
|
|
162
|
-
|
|
163
|
-
columnTypes=["string", "url", "string"]
|
|
164
|
-
minRows=0 maxRows=5 %}
|
|
169
|
+
{% field kind="table" id="competitors" label="Key Competitors" columnIds=["company_name", "website", "one_liner"] columnTypes=["string", "url", "string"] minRows=0 maxRows=5 %}
|
|
170
|
+
|
|
165
171
|
| Company Name | Website | One-liner |
|
|
166
172
|
|--------------|---------|-----------|
|
|
173
|
+
|
|
167
174
|
{% /field %}
|
|
168
175
|
|
|
169
176
|
{% instructions ref="competitors" %}
|
|
@@ -174,12 +181,11 @@ List main competitors with their website and a brief description.
|
|
|
174
181
|
|
|
175
182
|
{% group id="press_coverage" title="Press & Coverage" %}
|
|
176
183
|
|
|
177
|
-
{% field kind="table" id="press_articles" label="Press Coverage"
|
|
178
|
-
|
|
179
|
-
columnTypes=["string", "string", "date", "url"]
|
|
180
|
-
minRows=1 maxRows=10 %}
|
|
184
|
+
{% field kind="table" id="press_articles" label="Press Coverage" columnIds=["title", "publication", "date", "url"] columnTypes=["string", "string", "date", "url"] minRows=1 maxRows=10 %}
|
|
185
|
+
|
|
181
186
|
| Title | Publication | Date | URL |
|
|
182
187
|
|-------|-------------|------|-----|
|
|
188
|
+
|
|
183
189
|
{% /field %}
|
|
184
190
|
|
|
185
191
|
{% instructions ref="press_articles" %}
|
|
@@ -205,7 +211,8 @@ PitchBook company profile URL if available.
|
|
|
205
211
|
{% field kind="url_list" id="sources" label="Source URLs" minItems=1 uniqueItems=true %}{% /field %}
|
|
206
212
|
|
|
207
213
|
{% instructions ref="sources" %}
|
|
208
|
-
List all source URLs used for this research.
|
|
214
|
+
List all source URLs used for this research.
|
|
215
|
+
Include Crunchbase, company website, and any additional sources consulted.
|
|
209
216
|
{% /instructions %}
|
|
210
217
|
|
|
211
218
|
{% /group %}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "markform",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.16",
|
|
4
4
|
"description": "Markdown forms for token-friendly workflows",
|
|
5
5
|
"license": "AGPL-3.0-or-later",
|
|
6
6
|
"author": "Joshua Levy",
|
|
@@ -77,7 +77,10 @@
|
|
|
77
77
|
"@vitest/coverage-v8": "^4.0.16",
|
|
78
78
|
"ajv": "^8.17.1",
|
|
79
79
|
"ajv-formats": "^3.0.1",
|
|
80
|
+
"c8": "^10.1.3",
|
|
81
|
+
"monocart-coverage-reports": "^2.12.9",
|
|
80
82
|
"publint": "^0.3.16",
|
|
83
|
+
"tryscript": "^0.1.4",
|
|
81
84
|
"tsdown": "^0.18.3",
|
|
82
85
|
"typescript": "^5.9.3",
|
|
83
86
|
"vitest": "^4.0.16"
|
|
@@ -92,8 +95,11 @@
|
|
|
92
95
|
"test:unit": "vitest run tests/unit",
|
|
93
96
|
"test:golden": "vitest run tests/golden",
|
|
94
97
|
"test:golden:regen": "npx tsx scripts/regen-golden-sessions.ts",
|
|
95
|
-
"test:coverage": "vitest run --coverage",
|
|
96
|
-
"test:coverage:
|
|
98
|
+
"test:coverage": "vitest run --coverage && tryscript run 'tests/cli/**/*.tryscript.md' --coverage --merge-lcov coverage/lcov.info",
|
|
99
|
+
"test:coverage:vitest": "vitest run --coverage",
|
|
100
|
+
"test:coverage:cli": "tryscript run 'tests/cli/**/*.tryscript.md' --coverage --merge-lcov coverage/lcov.info",
|
|
101
|
+
"test:tryscript": "tryscript run 'tests/cli/**/*.tryscript.md'",
|
|
102
|
+
"test:tryscript:update": "tryscript run --update 'tests/cli/**/*.tryscript.md'",
|
|
97
103
|
"publint": "publint"
|
|
98
104
|
}
|
|
99
105
|
}
|
package/dist/shared-CNqwaxUt.mjs
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
import { a as formatPath, c as logError, d as logTiming, f as logVerbose, g as writeFile, h as shouldUseColors, i as formatOutput, l as logInfo, m as readFile, n as createSpinner, o as getCommandContext, p as logWarn, r as ensureFormsDir, s as logDryRun, t as OUTPUT_FORMATS, u as logSuccess } from "./shared-D3dNi-Gn.mjs";
|
|
3
|
-
|
|
4
|
-
export { writeFile };
|