@profullstack/agenticjobs 0.9.0 → 0.10.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/README.md +20 -0
- package/dist/config.d.ts +13 -1
- package/dist/config.js +4 -1
- package/dist/config.js.map +1 -1
- package/dist/core/agentwriter.d.ts +79 -0
- package/dist/core/agentwriter.js +343 -0
- package/dist/core/agentwriter.js.map +1 -0
- package/dist/directory/fetch.d.ts +1 -1
- package/dist/server/routes/pages.js +44 -4
- package/dist/server/routes/pages.js.map +1 -1
- package/dist/views/post.d.ts +4 -0
- package/dist/views/post.js +1 -1
- package/dist/views/post.js.map +1 -1
- package/migrations/0013_agent_drafts.sql +19 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -158,6 +158,26 @@ Leave `RESEND_API_KEY` unset and links are printed to the server log instead, wh
|
|
|
158
158
|
is what you want on a laptop. They are never shown in the browser: whoever typed an
|
|
159
159
|
address is not necessarily whoever owns it.
|
|
160
160
|
|
|
161
|
+
### Writing a listing with a model
|
|
162
|
+
|
|
163
|
+
An employer with a brief and no time can have a model expand it into the form. Set
|
|
164
|
+
one key and the box appears on `/post`; set neither and it does not:
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
OPENAI_API_KEY=sk-... # or ANTHROPIC_API_KEY=sk-ant-...
|
|
168
|
+
WRITER_MODEL=gpt-5.2-codex # optional; defaults to gpt-5.2 or claude-opus-5
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
It fills the form in and stops. Nothing is written and nothing is published: the
|
|
172
|
+
person who asked reads and edits every field, and it still becomes a draft after
|
|
173
|
+
that. This is the same seam an employer's agent goes through over the API, which is
|
|
174
|
+
the whole point of the board.
|
|
175
|
+
|
|
176
|
+
It will not invent compensation. If your brief says nothing about pay, every salary
|
|
177
|
+
field comes back empty, because a number nobody agreed to is worse than no number.
|
|
178
|
+
Drafting needs an account and is capped at ten an hour per account, so a board with a
|
|
179
|
+
key configured is not a public text generator.
|
|
180
|
+
|
|
161
181
|
## Boards find each other
|
|
162
182
|
|
|
163
183
|
Instances are independent. Each one has its own database, its own domain and its own
|
package/dist/config.d.ts
CHANGED
|
@@ -22,6 +22,18 @@ export interface Config {
|
|
|
22
22
|
/** Resend API key, or null to print sign-in links instead of sending them. */
|
|
23
23
|
resendApiKey: string | null;
|
|
24
24
|
mailFrom: string;
|
|
25
|
+
/**
|
|
26
|
+
* Model keys for agent-assisted drafting on the post form.
|
|
27
|
+
*
|
|
28
|
+
* Whichever is set turns the feature on; neither leaves it off and absent
|
|
29
|
+
* from the page rather than present and broken. Two providers because this
|
|
30
|
+
* is software other people self-host, and a board that only works if you
|
|
31
|
+
* bank with one vendor is not self-hostable.
|
|
32
|
+
*/
|
|
33
|
+
anthropicApiKey: string | null;
|
|
34
|
+
openaiApiKey: string | null;
|
|
35
|
+
/** Overrides the per-provider default model. */
|
|
36
|
+
writerModel: string | null;
|
|
25
37
|
version: string;
|
|
26
38
|
}
|
|
27
39
|
/**
|
|
@@ -35,7 +47,7 @@ export interface Config {
|
|
|
35
47
|
export declare function sameOrigin(a: string | null, b: string | null): boolean;
|
|
36
48
|
export declare function loadConfig(env?: NodeJS.ProcessEnv): Config;
|
|
37
49
|
/** Kept in step with package.json by the release script. */
|
|
38
|
-
export declare const VERSION = "0.
|
|
50
|
+
export declare const VERSION = "0.10.0";
|
|
39
51
|
export declare const SOFTWARE_NAME = "agenticjobs";
|
|
40
52
|
/**
|
|
41
53
|
* Tokens are stored as a hash of what was handed out, so this is the only
|
package/dist/config.js
CHANGED
|
@@ -75,11 +75,14 @@ export function loadConfig(env = process.env) {
|
|
|
75
75
|
isDirectory: flag(env['DIRECTORY']),
|
|
76
76
|
resendApiKey: env['RESEND_API_KEY']?.trim() || null,
|
|
77
77
|
mailFrom: env['MAIL_FROM']?.trim() || defaultMailFrom(publicUrl, boardName),
|
|
78
|
+
anthropicApiKey: env['ANTHROPIC_API_KEY']?.trim() || null,
|
|
79
|
+
openaiApiKey: env['OPENAI_API_KEY']?.trim() || null,
|
|
80
|
+
writerModel: env['WRITER_MODEL']?.trim() || null,
|
|
78
81
|
version: env['npm_package_version']?.trim() || VERSION,
|
|
79
82
|
};
|
|
80
83
|
}
|
|
81
84
|
/** Kept in step with package.json by the release script. */
|
|
82
|
-
export const VERSION = '0.
|
|
85
|
+
export const VERSION = '0.10.0';
|
|
83
86
|
export const SOFTWARE_NAME = 'agenticjobs';
|
|
84
87
|
/**
|
|
85
88
|
* Tokens are stored as a hash of what was handed out, so this is the only
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Turning a sentence into a draft listing.
|
|
3
|
+
*
|
|
4
|
+
* The board's thesis is agents hiring agents with a person in control at both
|
|
5
|
+
* ends, and this is that seam on the employer side for somebody who does not
|
|
6
|
+
* have an agent of their own. It fills the form and stops. Nothing is saved,
|
|
7
|
+
* nothing is published, and the person who asked reads every word before the
|
|
8
|
+
* listing exists. A model writing straight into the database would be the one
|
|
9
|
+
* shape this board has said it will not ship.
|
|
10
|
+
*
|
|
11
|
+
* Two providers, because this is MIT software other people self-host and a
|
|
12
|
+
* board that only works if you bank with one vendor is not self-hostable. The
|
|
13
|
+
* key that is set decides; when neither is set the feature is simply absent
|
|
14
|
+
* from the page rather than present and broken.
|
|
15
|
+
*
|
|
16
|
+
* Written against the two REST APIs directly rather than either vendor SDK.
|
|
17
|
+
* One dependency per provider to fill in a form is a poor trade for a package
|
|
18
|
+
* that reads a .docx by unzipping it by hand, and the request shapes here are
|
|
19
|
+
* small enough to read in full.
|
|
20
|
+
*/
|
|
21
|
+
import type pg from 'pg';
|
|
22
|
+
import type { Config } from '../config.ts';
|
|
23
|
+
/** The model was asked and could not answer. Never fatal to the page. */
|
|
24
|
+
export declare class AgentWriterProblem extends Error {
|
|
25
|
+
}
|
|
26
|
+
export type WriterProvider = 'anthropic' | 'openai';
|
|
27
|
+
/**
|
|
28
|
+
* Which provider this instance can use, or null for none.
|
|
29
|
+
*
|
|
30
|
+
* Anthropic first when both are set, for no better reason than that a board
|
|
31
|
+
* with both keys has to pick one and a coin flip at request time would make
|
|
32
|
+
* the same brief produce different listings.
|
|
33
|
+
*/
|
|
34
|
+
export declare function writerProvider(config: Config): WriterProvider | null;
|
|
35
|
+
interface Context {
|
|
36
|
+
boardName: string;
|
|
37
|
+
orgName: string | null;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* A brief, expanded into values the post form can be rendered with.
|
|
41
|
+
*
|
|
42
|
+
* Returns form values rather than a job, because the next thing that happens
|
|
43
|
+
* is that a person looks at them. They go through the same `normaliseInput`
|
|
44
|
+
* every other posting path goes through when the form is finally submitted,
|
|
45
|
+
* so nothing here can put a listing into a state a hand-typed one could not
|
|
46
|
+
* reach.
|
|
47
|
+
*/
|
|
48
|
+
export declare function draftListing(brief: string, context: Context, config: Config, fetchImpl?: typeof fetch): Promise<Record<string, string>>;
|
|
49
|
+
/**
|
|
50
|
+
* The model's JSON, reduced to form values this board will accept.
|
|
51
|
+
*
|
|
52
|
+
* Everything is checked against the same lists the form's own selects are
|
|
53
|
+
* built from, and anything unrecognised is dropped rather than corrected. A
|
|
54
|
+
* model that invents an employment type should leave that field blank for a
|
|
55
|
+
* person to fill in, not have its answer bent into the nearest legal value:
|
|
56
|
+
* the second one looks like the employer chose it.
|
|
57
|
+
*
|
|
58
|
+
* Exported because this is the part worth testing, and testing it needs no
|
|
59
|
+
* network and no key.
|
|
60
|
+
*/
|
|
61
|
+
export declare function fieldsFromModelJson(raw: string): Record<string, string>;
|
|
62
|
+
/**
|
|
63
|
+
* How many drafts this account has asked for in the last hour.
|
|
64
|
+
*
|
|
65
|
+
* The ceiling is per account rather than per board: one employer writing four
|
|
66
|
+
* listings in an afternoon is the use case, and a shared board-wide limit
|
|
67
|
+
* would let one of them lock out everybody else.
|
|
68
|
+
*/
|
|
69
|
+
export declare const DRAFTS_PER_HOUR = 10;
|
|
70
|
+
export declare function recentDraftCount(pool: pg.Pool, userId: string): Promise<number>;
|
|
71
|
+
/**
|
|
72
|
+
* Recorded before the model is called, not after.
|
|
73
|
+
*
|
|
74
|
+
* A request that fails still cost the board something and still came from
|
|
75
|
+
* somebody, so counting only the successes would leave the cheapest way to
|
|
76
|
+
* burn the key uncounted.
|
|
77
|
+
*/
|
|
78
|
+
export declare function recordDraft(pool: pg.Pool, userId: string): Promise<void>;
|
|
79
|
+
export {};
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Turning a sentence into a draft listing.
|
|
3
|
+
*
|
|
4
|
+
* The board's thesis is agents hiring agents with a person in control at both
|
|
5
|
+
* ends, and this is that seam on the employer side for somebody who does not
|
|
6
|
+
* have an agent of their own. It fills the form and stops. Nothing is saved,
|
|
7
|
+
* nothing is published, and the person who asked reads every word before the
|
|
8
|
+
* listing exists. A model writing straight into the database would be the one
|
|
9
|
+
* shape this board has said it will not ship.
|
|
10
|
+
*
|
|
11
|
+
* Two providers, because this is MIT software other people self-host and a
|
|
12
|
+
* board that only works if you bank with one vendor is not self-hostable. The
|
|
13
|
+
* key that is set decides; when neither is set the feature is simply absent
|
|
14
|
+
* from the page rather than present and broken.
|
|
15
|
+
*
|
|
16
|
+
* Written against the two REST APIs directly rather than either vendor SDK.
|
|
17
|
+
* One dependency per provider to fill in a form is a poor trade for a package
|
|
18
|
+
* that reads a .docx by unzipping it by hand, and the request shapes here are
|
|
19
|
+
* small enough to read in full.
|
|
20
|
+
*/
|
|
21
|
+
import { AGENT_POLICIES, EMPLOYMENT_TYPES, SALARY_PERIODS, SENIORITIES, WORKPLACES, } from "../schema/job.js";
|
|
22
|
+
/** The model was asked and could not answer. Never fatal to the page. */
|
|
23
|
+
export class AgentWriterProblem extends Error {
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Which provider this instance can use, or null for none.
|
|
27
|
+
*
|
|
28
|
+
* Anthropic first when both are set, for no better reason than that a board
|
|
29
|
+
* with both keys has to pick one and a coin flip at request time would make
|
|
30
|
+
* the same brief produce different listings.
|
|
31
|
+
*/
|
|
32
|
+
export function writerProvider(config) {
|
|
33
|
+
if (config.anthropicApiKey !== null)
|
|
34
|
+
return 'anthropic';
|
|
35
|
+
if (config.openaiApiKey !== null)
|
|
36
|
+
return 'openai';
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* What the model is asked for, and what it is asked not to do.
|
|
41
|
+
*
|
|
42
|
+
* The pay rules are the ones that matter. An invented salary range is worse
|
|
43
|
+
* than an empty one: the employer may not notice it, and a candidate who
|
|
44
|
+
* applies because of a number nobody agreed to has been misled by this board.
|
|
45
|
+
* So pay comes from the brief or not at all, and "unpaid" has to be stated
|
|
46
|
+
* rather than inferred from silence.
|
|
47
|
+
*/
|
|
48
|
+
const SYSTEM = [
|
|
49
|
+
'You write job listings for a job board. You are given a short brief from the',
|
|
50
|
+
'employer and you expand it into a complete listing.',
|
|
51
|
+
'',
|
|
52
|
+
'Return a single JSON object and nothing else. Every field is optional; leave',
|
|
53
|
+
'out anything the brief does not support.',
|
|
54
|
+
'',
|
|
55
|
+
' title a specific role title, under 80 characters',
|
|
56
|
+
' description Markdown. What the work is, who it suits, how the team',
|
|
57
|
+
' operates. Write in the employer\'s voice, second person',
|
|
58
|
+
' to the reader. No headings above level 2. 150-350 words.',
|
|
59
|
+
' requirements array of short strings',
|
|
60
|
+
' responsibilities array of short strings',
|
|
61
|
+
' tags array of lowercase topic words',
|
|
62
|
+
' stack array of lowercase technology names',
|
|
63
|
+
' employmentType one of: full-time, part-time, contract, internship, temporary',
|
|
64
|
+
' workplace one of: remote, hybrid, onsite',
|
|
65
|
+
' seniority one of: intern, junior, mid, senior, staff, principal, lead',
|
|
66
|
+
' location free text, only if the brief gives one',
|
|
67
|
+
' salaryMin integer, ONLY if the brief states pay',
|
|
68
|
+
' salaryMax integer, ONLY if the brief states pay',
|
|
69
|
+
' salaryPeriod one of: hour, day, week, month, year',
|
|
70
|
+
' salaryUnpaid true ONLY if the brief says the role is unpaid',
|
|
71
|
+
'',
|
|
72
|
+
'Rules you do not break:',
|
|
73
|
+
'- Never invent compensation. If the brief says nothing about pay, omit every',
|
|
74
|
+
' salary field. A number nobody agreed to is worse than no number.',
|
|
75
|
+
'- Never invent a company name, a benefit, a funding stage, or a headcount.',
|
|
76
|
+
'- Do not write "competitive salary", "rockstar", "ninja", or "fast-paced".',
|
|
77
|
+
'- Do not address the reader as a candidate in the description title.',
|
|
78
|
+
].join('\n');
|
|
79
|
+
/**
|
|
80
|
+
* A brief, expanded into values the post form can be rendered with.
|
|
81
|
+
*
|
|
82
|
+
* Returns form values rather than a job, because the next thing that happens
|
|
83
|
+
* is that a person looks at them. They go through the same `normaliseInput`
|
|
84
|
+
* every other posting path goes through when the form is finally submitted,
|
|
85
|
+
* so nothing here can put a listing into a state a hand-typed one could not
|
|
86
|
+
* reach.
|
|
87
|
+
*/
|
|
88
|
+
export async function draftListing(brief, context, config, fetchImpl = fetch) {
|
|
89
|
+
const trimmed = brief.trim();
|
|
90
|
+
if (trimmed.length < 10) {
|
|
91
|
+
throw new AgentWriterProblem('Say a little more about the role, and I will draft it.');
|
|
92
|
+
}
|
|
93
|
+
const provider = writerProvider(config);
|
|
94
|
+
if (provider === null) {
|
|
95
|
+
throw new AgentWriterProblem('This board has no model configured.');
|
|
96
|
+
}
|
|
97
|
+
const prompt = [
|
|
98
|
+
`Board: ${context.boardName}.`,
|
|
99
|
+
context.orgName === null ? null : `Employer: ${context.orgName}.`,
|
|
100
|
+
'',
|
|
101
|
+
'The brief:',
|
|
102
|
+
trimmed.slice(0, 4000),
|
|
103
|
+
]
|
|
104
|
+
.filter((line) => line !== null)
|
|
105
|
+
.join('\n');
|
|
106
|
+
const raw = provider === 'anthropic'
|
|
107
|
+
? await askAnthropic(prompt, config, fetchImpl)
|
|
108
|
+
: await askOpenAi(prompt, config, fetchImpl);
|
|
109
|
+
return fieldsFromModelJson(raw);
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* The Messages API, by hand.
|
|
113
|
+
*
|
|
114
|
+
* Thinking is on by default on this model and `effort: low` is right for
|
|
115
|
+
* filling in a form: the work is recall and phrasing, not reasoning, and the
|
|
116
|
+
* person is waiting on a page for it.
|
|
117
|
+
*/
|
|
118
|
+
async function askAnthropic(prompt, config, fetchImpl) {
|
|
119
|
+
const response = await fetchImpl('https://api.anthropic.com/v1/messages', {
|
|
120
|
+
method: 'POST',
|
|
121
|
+
headers: {
|
|
122
|
+
'content-type': 'application/json',
|
|
123
|
+
'x-api-key': config.anthropicApiKey ?? '',
|
|
124
|
+
'anthropic-version': '2023-06-01',
|
|
125
|
+
},
|
|
126
|
+
body: JSON.stringify({
|
|
127
|
+
model: config.writerModel ?? 'claude-opus-5',
|
|
128
|
+
max_tokens: 4000,
|
|
129
|
+
output_config: { effort: 'low' },
|
|
130
|
+
system: SYSTEM,
|
|
131
|
+
messages: [{ role: 'user', content: prompt }],
|
|
132
|
+
}),
|
|
133
|
+
});
|
|
134
|
+
if (!response.ok)
|
|
135
|
+
throw await problemFor(response, 'Anthropic');
|
|
136
|
+
const body = (await response.json());
|
|
137
|
+
// A refusal arrives as a 200 with nothing usable in it, so the status alone
|
|
138
|
+
// is not evidence that there is text to read.
|
|
139
|
+
if (body.stop_reason === 'refusal') {
|
|
140
|
+
throw new AgentWriterProblem('The model declined to write that one.');
|
|
141
|
+
}
|
|
142
|
+
const text = (body.content ?? [])
|
|
143
|
+
.filter((block) => block.type === 'text')
|
|
144
|
+
.map((block) => block.text ?? '')
|
|
145
|
+
.join('');
|
|
146
|
+
if (text.trim() === '')
|
|
147
|
+
throw new AgentWriterProblem('The model returned nothing.');
|
|
148
|
+
return text;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Chat completions, by hand.
|
|
152
|
+
*
|
|
153
|
+
* `max_completion_tokens`, not `max_tokens`: the current models reject the
|
|
154
|
+
* older name. `json_object` is what keeps the reply parseable without asking
|
|
155
|
+
* the model nicely twice.
|
|
156
|
+
*/
|
|
157
|
+
async function askOpenAi(prompt, config, fetchImpl) {
|
|
158
|
+
const response = await fetchImpl('https://api.openai.com/v1/chat/completions', {
|
|
159
|
+
method: 'POST',
|
|
160
|
+
headers: {
|
|
161
|
+
'content-type': 'application/json',
|
|
162
|
+
authorization: `Bearer ${config.openaiApiKey ?? ''}`,
|
|
163
|
+
},
|
|
164
|
+
body: JSON.stringify({
|
|
165
|
+
model: config.writerModel ?? 'gpt-5.2',
|
|
166
|
+
max_completion_tokens: 4000,
|
|
167
|
+
response_format: { type: 'json_object' },
|
|
168
|
+
messages: [
|
|
169
|
+
{ role: 'system', content: SYSTEM },
|
|
170
|
+
{ role: 'user', content: prompt },
|
|
171
|
+
],
|
|
172
|
+
}),
|
|
173
|
+
});
|
|
174
|
+
if (!response.ok)
|
|
175
|
+
throw await problemFor(response, 'OpenAI');
|
|
176
|
+
const body = (await response.json());
|
|
177
|
+
const choice = body.choices?.[0]?.message;
|
|
178
|
+
if (typeof choice?.refusal === 'string' && choice.refusal !== '') {
|
|
179
|
+
throw new AgentWriterProblem('The model declined to write that one.');
|
|
180
|
+
}
|
|
181
|
+
const text = choice?.content ?? '';
|
|
182
|
+
if (text.trim() === '')
|
|
183
|
+
throw new AgentWriterProblem('The model returned nothing.');
|
|
184
|
+
return text;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* An HTTP failure, said in words a person on a form can act on.
|
|
188
|
+
*
|
|
189
|
+
* The provider's own message is deliberately not shown: it is written for
|
|
190
|
+
* whoever holds the key, not for the employer typing a brief, and it can
|
|
191
|
+
* carry account details that do not belong on a public page.
|
|
192
|
+
*/
|
|
193
|
+
async function problemFor(response, provider) {
|
|
194
|
+
// Read and discard, so the connection is not left hanging on a body nobody
|
|
195
|
+
// consumed.
|
|
196
|
+
await response.text().catch(() => '');
|
|
197
|
+
if (response.status === 401 || response.status === 403) {
|
|
198
|
+
return new AgentWriterProblem(`This board's ${provider} key was rejected.`);
|
|
199
|
+
}
|
|
200
|
+
if (response.status === 429) {
|
|
201
|
+
return new AgentWriterProblem('The model is rate limited right now. Try again shortly.');
|
|
202
|
+
}
|
|
203
|
+
return new AgentWriterProblem(`${provider} could not be reached. Try again shortly.`);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* The model's JSON, reduced to form values this board will accept.
|
|
207
|
+
*
|
|
208
|
+
* Everything is checked against the same lists the form's own selects are
|
|
209
|
+
* built from, and anything unrecognised is dropped rather than corrected. A
|
|
210
|
+
* model that invents an employment type should leave that field blank for a
|
|
211
|
+
* person to fill in, not have its answer bent into the nearest legal value:
|
|
212
|
+
* the second one looks like the employer chose it.
|
|
213
|
+
*
|
|
214
|
+
* Exported because this is the part worth testing, and testing it needs no
|
|
215
|
+
* network and no key.
|
|
216
|
+
*/
|
|
217
|
+
export function fieldsFromModelJson(raw) {
|
|
218
|
+
const parsed = parseLoose(raw);
|
|
219
|
+
if (parsed === null)
|
|
220
|
+
throw new AgentWriterProblem('The model did not return a listing.');
|
|
221
|
+
const out = {};
|
|
222
|
+
const put = (key, value) => {
|
|
223
|
+
if (value.trim() !== '')
|
|
224
|
+
out[key] = value.trim();
|
|
225
|
+
};
|
|
226
|
+
put('title', text(parsed['title'], 140));
|
|
227
|
+
put('description', text(parsed['description'], 20_000));
|
|
228
|
+
put('location', text(parsed['location'], 120));
|
|
229
|
+
put('employmentType', oneOf(parsed['employmentType'], EMPLOYMENT_TYPES));
|
|
230
|
+
put('workplace', oneOf(parsed['workplace'], WORKPLACES));
|
|
231
|
+
put('seniority', oneOf(parsed['seniority'], SENIORITIES));
|
|
232
|
+
put('salaryPeriod', oneOf(parsed['salaryPeriod'], SALARY_PERIODS));
|
|
233
|
+
put('agentPolicy', oneOf(parsed['agentPolicy'], AGENT_POLICIES));
|
|
234
|
+
put('tags', list(parsed['tags'], 12));
|
|
235
|
+
put('stack', list(parsed['stack'], 20));
|
|
236
|
+
put('requirements', bullets(parsed['requirements']));
|
|
237
|
+
put('responsibilities', bullets(parsed['responsibilities']));
|
|
238
|
+
// Pay only survives if the model actually returned a number. "Unpaid" and a
|
|
239
|
+
// range are mutually exclusive here for the same reason they are everywhere
|
|
240
|
+
// else on the board.
|
|
241
|
+
if (parsed['salaryUnpaid'] === true) {
|
|
242
|
+
out['salaryUnpaid'] = 'on';
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
put('salaryMin', amount(parsed['salaryMin']));
|
|
246
|
+
put('salaryMax', amount(parsed['salaryMax']));
|
|
247
|
+
}
|
|
248
|
+
if (out['title'] === undefined && out['description'] === undefined) {
|
|
249
|
+
throw new AgentWriterProblem('The model did not return a listing.');
|
|
250
|
+
}
|
|
251
|
+
return out;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* JSON, whether or not it arrived alone.
|
|
255
|
+
*
|
|
256
|
+
* Both providers were asked for a bare object and both usually send one, but a
|
|
257
|
+
* model that wraps it in a ```json fence has still done the job, and failing
|
|
258
|
+
* the whole request over a fence would be the wrong place to be strict.
|
|
259
|
+
*/
|
|
260
|
+
function parseLoose(raw) {
|
|
261
|
+
const attempts = [raw];
|
|
262
|
+
const fenced = /```(?:json)?\s*([\s\S]*?)```/.exec(raw);
|
|
263
|
+
if (fenced !== null)
|
|
264
|
+
attempts.push(fenced[1] ?? '');
|
|
265
|
+
const braced = /\{[\s\S]*\}/.exec(raw);
|
|
266
|
+
if (braced !== null)
|
|
267
|
+
attempts.push(braced[0]);
|
|
268
|
+
for (const attempt of attempts) {
|
|
269
|
+
try {
|
|
270
|
+
const value = JSON.parse(attempt);
|
|
271
|
+
if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
|
|
272
|
+
return value;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
catch {
|
|
276
|
+
// Try the next shape.
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
return null;
|
|
280
|
+
}
|
|
281
|
+
function text(value, max) {
|
|
282
|
+
return typeof value === 'string' ? value.slice(0, max) : '';
|
|
283
|
+
}
|
|
284
|
+
function oneOf(value, allowed) {
|
|
285
|
+
if (typeof value !== 'string')
|
|
286
|
+
return '';
|
|
287
|
+
const found = allowed.find((item) => item === value.trim().toLowerCase());
|
|
288
|
+
return found ?? '';
|
|
289
|
+
}
|
|
290
|
+
function amount(value) {
|
|
291
|
+
const parsed = typeof value === 'number' ? value : Number.parseInt(String(value ?? ''), 10);
|
|
292
|
+
if (!Number.isFinite(parsed) || parsed <= 0)
|
|
293
|
+
return '';
|
|
294
|
+
return String(Math.min(100_000_000, Math.round(parsed)));
|
|
295
|
+
}
|
|
296
|
+
/** The form takes these comma separated, which is how a person edits them. */
|
|
297
|
+
function list(value, max) {
|
|
298
|
+
if (!Array.isArray(value))
|
|
299
|
+
return typeof value === 'string' ? value : '';
|
|
300
|
+
return value
|
|
301
|
+
.filter((item) => typeof item === 'string')
|
|
302
|
+
.map((item) => item.trim().toLowerCase())
|
|
303
|
+
.filter((item) => item !== '' && item.length <= 40)
|
|
304
|
+
.slice(0, max)
|
|
305
|
+
.join(', ');
|
|
306
|
+
}
|
|
307
|
+
/** And these one per line. */
|
|
308
|
+
function bullets(value) {
|
|
309
|
+
if (!Array.isArray(value))
|
|
310
|
+
return typeof value === 'string' ? value : '';
|
|
311
|
+
return value
|
|
312
|
+
.filter((item) => typeof item === 'string')
|
|
313
|
+
.map((item) => item.trim().replace(/^[-*]\s*/, ''))
|
|
314
|
+
.filter((item) => item !== '')
|
|
315
|
+
.slice(0, 20)
|
|
316
|
+
.join('\n');
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* How many drafts this account has asked for in the last hour.
|
|
320
|
+
*
|
|
321
|
+
* The ceiling is per account rather than per board: one employer writing four
|
|
322
|
+
* listings in an afternoon is the use case, and a shared board-wide limit
|
|
323
|
+
* would let one of them lock out everybody else.
|
|
324
|
+
*/
|
|
325
|
+
export const DRAFTS_PER_HOUR = 10;
|
|
326
|
+
export async function recentDraftCount(pool, userId) {
|
|
327
|
+
const result = await pool.query(`select count(*)::int as count
|
|
328
|
+
from agent_drafts
|
|
329
|
+
where user_id = $1
|
|
330
|
+
and created_at > now() - interval '1 hour'`, [userId]);
|
|
331
|
+
return result.rows[0]?.count ?? 0;
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Recorded before the model is called, not after.
|
|
335
|
+
*
|
|
336
|
+
* A request that fails still cost the board something and still came from
|
|
337
|
+
* somebody, so counting only the successes would leave the cheapest way to
|
|
338
|
+
* burn the key uncounted.
|
|
339
|
+
*/
|
|
340
|
+
export async function recordDraft(pool, userId) {
|
|
341
|
+
await pool.query(`insert into agent_drafts (user_id) values ($1)`, [userId]);
|
|
342
|
+
}
|
|
343
|
+
//# sourceMappingURL=agentwriter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agentwriter.js","sourceRoot":"","sources":["../../src/core/agentwriter.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* response says about where it came from.
|
|
9
9
|
*/
|
|
10
10
|
import { type InstanceDescriptor } from '../schema/instance.ts';
|
|
11
|
-
export declare const USER_AGENT = "agenticjobs/0.
|
|
11
|
+
export declare const USER_AGENT = "agenticjobs/0.10.0 (+https://agenticjobs.work)";
|
|
12
12
|
export declare class FetchProblem extends Error {
|
|
13
13
|
}
|
|
14
14
|
export interface FetchOptions {
|
|
@@ -36,6 +36,7 @@ import { allTags, resumeForViewer, tagsFrom, toCandidateSummary, withTags, } fro
|
|
|
36
36
|
import { BODY_MAX, candidateSlugFor, follow, followerCount, isFollowing, listFollowedUpdates, listFollowing, listUpdates, listUpdatesFor, postUpdate, unfollow, userForCandidate, } from "../../core/updates.js";
|
|
37
37
|
import { UpdatesPage } from "../../views/updates.js";
|
|
38
38
|
import { CONTENT_TYPE, ConversionProblem, filename, resumeDocx, resumeHtml, resumePdf, } from "../../core/markdown-media.js";
|
|
39
|
+
import { AgentWriterProblem, draftListing, DRAFTS_PER_HOUR, recentDraftCount, recordDraft, writerProvider, } from "../../core/agentwriter.js";
|
|
39
40
|
import { readSpec } from "./specs.js";
|
|
40
41
|
function shell(c) {
|
|
41
42
|
const { config } = c.get('deps');
|
|
@@ -619,21 +620,60 @@ export function pageRoutes() {
|
|
|
619
620
|
});
|
|
620
621
|
// --- posting ----------------------------------------------------------
|
|
621
622
|
pages.get('/post', async (c) => {
|
|
622
|
-
const { pool } = c.get('deps');
|
|
623
|
+
const { pool, config } = c.get('deps');
|
|
624
|
+
const viewer = requireViewer(c);
|
|
625
|
+
if (viewer instanceof Response)
|
|
626
|
+
return viewer;
|
|
627
|
+
return c.html(_jsx(Layout, { ...shell(c), title: "Post a job", noindex: true, children: _jsx(PostJobPage, { orgs: await listOrgsForUser(pool, viewer.id), canDraft: writerProvider(config) !== null }) }));
|
|
628
|
+
});
|
|
629
|
+
/**
|
|
630
|
+
* A brief, turned into a filled-in form.
|
|
631
|
+
*
|
|
632
|
+
* It renders the form and stops. Nothing is written, nothing is published,
|
|
633
|
+
* and the person who asked reads every field before a listing exists, which
|
|
634
|
+
* is the same seam an employer's agent goes through when it posts over the
|
|
635
|
+
* API and lands a draft.
|
|
636
|
+
*/
|
|
637
|
+
pages.post('/post/draft', async (c) => {
|
|
638
|
+
const { pool, config } = c.get('deps');
|
|
623
639
|
const viewer = requireViewer(c);
|
|
624
640
|
if (viewer instanceof Response)
|
|
625
641
|
return viewer;
|
|
626
|
-
|
|
642
|
+
const form = await formOf(c);
|
|
643
|
+
const orgs = await listOrgsForUser(pool, viewer.id);
|
|
644
|
+
const brief = form['brief'] ?? '';
|
|
645
|
+
const canDraft = writerProvider(config) !== null;
|
|
646
|
+
const render = (values, error, status = 200) => c.html(_jsx(Layout, { ...shell(c), title: "Post a job", noindex: true, children: _jsx(PostJobPage, { orgs: orgs, canDraft: canDraft, brief: brief, ...(error === undefined ? {} : { error }), values: values }) }), status === 200 ? 200 : 400);
|
|
647
|
+
if (!canDraft)
|
|
648
|
+
return render(form, 'This board has no model configured.', 400);
|
|
649
|
+
// Counted before the model is called: a request that failed still cost the
|
|
650
|
+
// board something and still came from somebody.
|
|
651
|
+
if ((await recentDraftCount(pool, viewer.id)) >= DRAFTS_PER_HOUR) {
|
|
652
|
+
return render(form, `That is ${DRAFTS_PER_HOUR} drafts in an hour. Try again later.`, 400);
|
|
653
|
+
}
|
|
654
|
+
await recordDraft(pool, viewer.id);
|
|
655
|
+
try {
|
|
656
|
+
const org = orgs.find((candidate) => candidate.slug === form['org']);
|
|
657
|
+
const drafted = await draftListing(brief, { boardName: config.boardName, orgName: org?.name ?? null }, config);
|
|
658
|
+
// The employer's own choice of org survives the round trip; the model
|
|
659
|
+
// does not get to pick who is hiring.
|
|
660
|
+
return render({ ...drafted, ...(form['org'] === undefined ? {} : { org: form['org'] }) });
|
|
661
|
+
}
|
|
662
|
+
catch (error) {
|
|
663
|
+
if (error instanceof AgentWriterProblem)
|
|
664
|
+
return render(form, error.message, 400);
|
|
665
|
+
throw error;
|
|
666
|
+
}
|
|
627
667
|
});
|
|
628
668
|
pages.post('/post', async (c) => {
|
|
629
|
-
const { pool } = c.get('deps');
|
|
669
|
+
const { pool, config } = c.get('deps');
|
|
630
670
|
const viewer = requireViewer(c);
|
|
631
671
|
if (viewer instanceof Response)
|
|
632
672
|
return viewer;
|
|
633
673
|
const form = await formOf(c);
|
|
634
674
|
const orgs = await listOrgsForUser(pool, viewer.id);
|
|
635
675
|
const org = orgs.find((candidate) => candidate.slug === form['org']);
|
|
636
|
-
const fail = (message) => c.html(_jsx(Layout, { ...shell(c), title: "Post a job", noindex: true, children: _jsx(PostJobPage, { orgs: orgs, error: message, values: form }) }), 400);
|
|
676
|
+
const fail = (message) => c.html(_jsx(Layout, { ...shell(c), title: "Post a job", noindex: true, children: _jsx(PostJobPage, { orgs: orgs, error: message, values: form, canDraft: writerProvider(config) !== null }) }), 400);
|
|
637
677
|
if (org === undefined)
|
|
638
678
|
return fail('Choose which employer this is for.');
|
|
639
679
|
const input = normaliseInput(form, org.id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/server/routes/pages.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/server/routes/pages.tsx"],"names":[],"mappings":"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"}
|
package/dist/views/post.d.ts
CHANGED
|
@@ -7,6 +7,10 @@ export declare const PostJobPage: FC<{
|
|
|
7
7
|
orgs: Organisation[];
|
|
8
8
|
error?: string;
|
|
9
9
|
values?: Record<string, string>;
|
|
10
|
+
/** True when this board has a model key, so the brief box is worth showing. */
|
|
11
|
+
canDraft?: boolean;
|
|
12
|
+
/** What was typed into it, so a failed draft does not lose the brief. */
|
|
13
|
+
brief?: string;
|
|
10
14
|
}>;
|
|
11
15
|
export declare const ManageJobPage: FC<{
|
|
12
16
|
job: Job;
|
package/dist/views/post.js
CHANGED
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "hono/jsx/jsx-
|
|
|
2
2
|
import { AGENT_POLICIES, APPLICATION_DECISIONS, EMPLOYMENT_TYPES, SALARY_PERIODS, SENIORITIES, WORKPLACES, } from "../schema/job.js";
|
|
3
3
|
import { ago } from "../schema/text.js";
|
|
4
4
|
import { Alert, Badge, Card, Empty, Field, Prose } from "./layout.js";
|
|
5
|
-
export const PostJobPage = ({ orgs, error, values = {} }) => (_jsxs("div", { class: "grid-2", children: [_jsxs("div", { class: "stack", children: [_jsx("h1", { children: "Post a job" }), _jsx("p", { class: "lede", children: "It stays a draft until you publish it, so nothing goes live by accident." }), error !== undefined && _jsx(Alert, { variant: "error", children: error }), orgs.length === 0 ? (_jsxs(Alert, { variant: "info", children: ["Add the employer first: ", _jsx("a", { href: "/me/employers/new", children: "add an employer" }), "."] })) : (_jsxs("form", { class: "stack", method: "post", action: "/post", children: [_jsx(Field, { label: "Employer", name: "org", children: _jsx("select", { class: "select", id: "org", name: "org", required: true, children: orgs.map((org) => (_jsx("option", { value: org.slug, selected: values['org'] === org.slug, children: org.name }))) }) }), _jsx(Field, { label: "Title", name: "title", children: _jsx("input", { class: "input", type: "text", id: "title", name: "title", value: values['title'] ?? '', required: true, maxlength: 140 }) }), _jsx(Field, { label: "Description", name: "description", hint: "Markdown. Headings, lists, links and tables all work.", children: _jsx("textarea", { class: "textarea", id: "description", name: "description", required: true, children: values['description'] ?? '' }) }), _jsxs("div", { class: "row", children: [_jsx(Field, { label: "Type", name: "employmentType", children: _jsx("select", { class: "select", id: "employmentType", name: "employmentType", children: EMPLOYMENT_TYPES.map((type) => (_jsx("option", { value: type, selected: values['employmentType'] === type, children: type }))) }) }), _jsx(Field, { label: "Where", name: "workplace", children: _jsx("select", { class: "select", id: "workplace", name: "workplace", children: WORKPLACES.map((place) => (_jsx("option", { value: place, selected: values['workplace'] === place, children: place }))) }) }), _jsx(Field, { label: "Level", name: "seniority", children: _jsxs("select", { class: "select", id: "seniority", name: "seniority", children: [_jsx("option", { value: "", children: "unspecified" }), SENIORITIES.map((level) => (_jsx("option", { value: level, selected: values['seniority'] === level, children: level })))] }) })] }), _jsx(Field, { label: "Location", name: "location", hint: 'Free text: "Berlin", "US timezones".', children: _jsx("input", { class: "input", type: "text", id: "location", name: "location", value: values['location'] ?? '' }) }), _jsxs("fieldset", { children: [_jsx("legend", { children: "Pay" }), _jsx("p", { class: "hint", style: "margin-top:0", children: "A listing without a number gets fewer and worse applications. Say the range." }), _jsxs("p", { class: "hint", style: "margin-top:0", children: [_jsxs("label", { children: [_jsx("input", { type: "checkbox", name: "salaryUnpaid", value: "on", checked: values['salaryUnpaid'] === 'on' }), ' ', "This role is unpaid"] }), ' ', "An unpaid internship or volunteer post says so here. It reads as Unpaid rather than as a listing whose author skipped the question, and any range below is ignored."] }), _jsxs("div", { class: "row", children: [_jsx("input", { class: "input", type: "number", name: "salaryMin", placeholder: "from", style: "width:8rem", value: values['salaryMin'] ?? '' }), _jsx("input", { class: "input", type: "number", name: "salaryMax", placeholder: "to", style: "width:8rem", value: values['salaryMax'] ?? '' }), _jsx("input", { class: "input", type: "text", name: "salaryCurrency", placeholder: "USD", maxlength: 3, style: "width:6rem", value: values['salaryCurrency'] ?? 'USD' }), _jsx("select", { class: "select", name: "salaryPeriod", style: "width:auto", children: SALARY_PERIODS.map((period) => (_jsxs("option", { value: period, selected: (values['salaryPeriod'] ?? 'year') === period, children: ["per ", period] }))) })] })] }), _jsx(Field, { label: "Stack", name: "stack", hint: "Comma separated. Also what people search on.", children: _jsx("input", { class: "input", type: "text", id: "stack", name: "stack", value: values['stack'] ?? '', placeholder: "typescript, postgres, hono" }) }), _jsx(Field, { label: "Tags", name: "tags", hint: "Comma separated.", children: _jsx("input", { class: "input", type: "text", id: "tags", name: "tags", value: values['tags'] ?? '', placeholder: "backend, remote-first" }) }), _jsxs("fieldset", { children: [_jsx("legend", { children: "Agent policy" }), _jsx("p", { class: "hint", style: "margin-top:0", children: "Required. Candidates increasingly use an agent to write applications; this says where you stand, instead of them finding out by being rejected without a reason." }), AGENT_POLICIES.map((policy) => (_jsxs("label", { class: "row", style: "align-items:flex-start;margin-top:.5rem", children: [_jsx("input", { type: "radio", name: "agentPolicy", value: policy, checked: (values['agentPolicy'] ?? 'disclose') === policy, style: "margin-top:.35rem" }), _jsxs("span", { children: [_jsx("strong", { children: POLICY_LABEL[policy] }), _jsx("br", {}), _jsx("span", { class: "hint", children: POLICY_HELP[policy] })] })] })))] }), _jsxs("fieldset", { children: [_jsx("legend", { children: "How to apply" }), _jsx("p", { class: "small muted", children: "Applications are taken on this board, so an agent can complete one without a browser and you get every application in one place. There is no offsite link." })] }), _jsx("button", { class: "btn btn-block", type: "submit", children: "Create draft" })] }))] }), _jsx("aside", { class: "stack", children: _jsxs(Card, { children: [_jsx("div", { class: "card-header", children: _jsx("h2", { class: "card-title", children: "Or post it from anywhere else" }) }), _jsx("pre", { class: "code-block", children: "agenticjobs post --org acme job.md" }), _jsx("p", { class: "small muted", children: "Over MCP, with the board connected:" }), _jsx("pre", { class: "code-block", children: "post_job(org: \"acme\", ...)" }), _jsx("p", { class: "small muted", children: "Through myna, alongside the rest of a launch:" }), _jsx("pre", { class: "code-block", children: "myna jobs post --to jobs:acme job.md" })] }) })] }));
|
|
5
|
+
export const PostJobPage = ({ orgs, error, values = {}, canDraft = false, brief = '' }) => (_jsxs("div", { class: "grid-2", children: [_jsxs("div", { class: "stack", children: [_jsx("h1", { children: "Post a job" }), _jsx("p", { class: "lede", children: "It stays a draft until you publish it, so nothing goes live by accident." }), error !== undefined && _jsx(Alert, { variant: "error", children: error }), orgs.length === 0 ? (_jsxs(Alert, { variant: "info", children: ["Add the employer first: ", _jsx("a", { href: "/me/employers/new", children: "add an employer" }), "."] })) : (_jsxs(_Fragment, { children: [canDraft && (_jsxs("form", { class: "stack-sm", method: "post", action: "/post/draft", children: [_jsx(Field, { label: "Write it with an agent", name: "brief", hint: "A sentence or two is enough. It fills the form in below and posts nothing: you read and edit every field, and it still stays a draft after that.", children: _jsx("textarea", { class: "textarea", id: "brief", name: "brief", rows: 3, placeholder: "Senior Go engineer, remote in European timezones, to own our payments service.", children: brief }) }), _jsxs("div", { class: "row", children: [_jsx("button", { class: "btn btn-secondary", type: "submit", children: "Draft it" }), _jsx("span", { class: "small muted", children: "It will not invent a salary. Pay comes from what you write here, or stays empty." })] })] })), _jsxs("form", { class: "stack", method: "post", action: "/post", children: [_jsx(Field, { label: "Employer", name: "org", children: _jsx("select", { class: "select", id: "org", name: "org", required: true, children: orgs.map((org) => (_jsx("option", { value: org.slug, selected: values['org'] === org.slug, children: org.name }))) }) }), _jsx(Field, { label: "Title", name: "title", children: _jsx("input", { class: "input", type: "text", id: "title", name: "title", value: values['title'] ?? '', required: true, maxlength: 140 }) }), _jsx(Field, { label: "Description", name: "description", hint: "Markdown. Headings, lists, links and tables all work.", children: _jsx("textarea", { class: "textarea", id: "description", name: "description", required: true, children: values['description'] ?? '' }) }), _jsxs("div", { class: "row", children: [_jsx(Field, { label: "Type", name: "employmentType", children: _jsx("select", { class: "select", id: "employmentType", name: "employmentType", children: EMPLOYMENT_TYPES.map((type) => (_jsx("option", { value: type, selected: values['employmentType'] === type, children: type }))) }) }), _jsx(Field, { label: "Where", name: "workplace", children: _jsx("select", { class: "select", id: "workplace", name: "workplace", children: WORKPLACES.map((place) => (_jsx("option", { value: place, selected: values['workplace'] === place, children: place }))) }) }), _jsx(Field, { label: "Level", name: "seniority", children: _jsxs("select", { class: "select", id: "seniority", name: "seniority", children: [_jsx("option", { value: "", children: "unspecified" }), SENIORITIES.map((level) => (_jsx("option", { value: level, selected: values['seniority'] === level, children: level })))] }) })] }), _jsx(Field, { label: "Location", name: "location", hint: 'Free text: "Berlin", "US timezones".', children: _jsx("input", { class: "input", type: "text", id: "location", name: "location", value: values['location'] ?? '' }) }), _jsxs("fieldset", { children: [_jsx("legend", { children: "Pay" }), _jsx("p", { class: "hint", style: "margin-top:0", children: "A listing without a number gets fewer and worse applications. Say the range." }), _jsxs("p", { class: "hint", style: "margin-top:0", children: [_jsxs("label", { children: [_jsx("input", { type: "checkbox", name: "salaryUnpaid", value: "on", checked: values['salaryUnpaid'] === 'on' }), ' ', "This role is unpaid"] }), ' ', "An unpaid internship or volunteer post says so here. It reads as Unpaid rather than as a listing whose author skipped the question, and any range below is ignored."] }), _jsxs("div", { class: "row", children: [_jsx("input", { class: "input", type: "number", name: "salaryMin", placeholder: "from", style: "width:8rem", value: values['salaryMin'] ?? '' }), _jsx("input", { class: "input", type: "number", name: "salaryMax", placeholder: "to", style: "width:8rem", value: values['salaryMax'] ?? '' }), _jsx("input", { class: "input", type: "text", name: "salaryCurrency", placeholder: "USD", maxlength: 3, style: "width:6rem", value: values['salaryCurrency'] ?? 'USD' }), _jsx("select", { class: "select", name: "salaryPeriod", style: "width:auto", children: SALARY_PERIODS.map((period) => (_jsxs("option", { value: period, selected: (values['salaryPeriod'] ?? 'year') === period, children: ["per ", period] }))) })] })] }), _jsx(Field, { label: "Stack", name: "stack", hint: "Comma separated. Also what people search on.", children: _jsx("input", { class: "input", type: "text", id: "stack", name: "stack", value: values['stack'] ?? '', placeholder: "typescript, postgres, hono" }) }), _jsx(Field, { label: "Tags", name: "tags", hint: "Comma separated.", children: _jsx("input", { class: "input", type: "text", id: "tags", name: "tags", value: values['tags'] ?? '', placeholder: "backend, remote-first" }) }), _jsxs("fieldset", { children: [_jsx("legend", { children: "Agent policy" }), _jsx("p", { class: "hint", style: "margin-top:0", children: "Required. Candidates increasingly use an agent to write applications; this says where you stand, instead of them finding out by being rejected without a reason." }), AGENT_POLICIES.map((policy) => (_jsxs("label", { class: "row", style: "align-items:flex-start;margin-top:.5rem", children: [_jsx("input", { type: "radio", name: "agentPolicy", value: policy, checked: (values['agentPolicy'] ?? 'disclose') === policy, style: "margin-top:.35rem" }), _jsxs("span", { children: [_jsx("strong", { children: POLICY_LABEL[policy] }), _jsx("br", {}), _jsx("span", { class: "hint", children: POLICY_HELP[policy] })] })] })))] }), _jsxs("fieldset", { children: [_jsx("legend", { children: "How to apply" }), _jsx("p", { class: "small muted", children: "Applications are taken on this board, so an agent can complete one without a browser and you get every application in one place. There is no offsite link." })] }), _jsx("button", { class: "btn btn-block", type: "submit", children: "Create draft" })] })] }))] }), _jsx("aside", { class: "stack", children: _jsxs(Card, { children: [_jsx("div", { class: "card-header", children: _jsx("h2", { class: "card-title", children: "Or post it from anywhere else" }) }), _jsx("pre", { class: "code-block", children: "agenticjobs post --org acme job.md" }), _jsx("p", { class: "small muted", children: "Over MCP, with the board connected:" }), _jsx("pre", { class: "code-block", children: "post_job(org: \"acme\", ...)" }), _jsx("p", { class: "small muted", children: "Through myna, alongside the rest of a launch:" }), _jsx("pre", { class: "code-block", children: "myna jobs post --to jobs:acme job.md" })] }) })] }));
|
|
6
6
|
const POLICY_LABEL = {
|
|
7
7
|
welcome: 'Agents welcome',
|
|
8
8
|
disclose: 'Agents, if disclosed',
|
package/dist/views/post.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post.js","sourceRoot":"","sources":["../../src/views/post.tsx"],"names":[],"mappings":";AAMA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,UAAU,GAEX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,aAAc,CAAC;AAEvE,MAAM,CAAC,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"post.js","sourceRoot":"","sources":["../../src/views/post.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
-- One row per time somebody asked a model to draft a listing.
|
|
2
|
+
--
|
|
3
|
+
-- This exists to be counted, not to be read. A board with a key configured is
|
|
4
|
+
-- holding an account somebody pays for, and a form that calls a model is a
|
|
5
|
+
-- proxy to it: without a ceiling, one script turns the employer's key into a
|
|
6
|
+
-- public text generator. Signed in is already required; this is the second
|
|
7
|
+
-- half of that.
|
|
8
|
+
--
|
|
9
|
+
-- Rows are kept rather than deleted after the window so that abuse is
|
|
10
|
+
-- visible after the fact. Nothing reads the brief back, so the brief is not
|
|
11
|
+
-- stored: it is the employer's unpublished writing and the count is the only
|
|
12
|
+
-- part this board needs.
|
|
13
|
+
create table if not exists agent_drafts (
|
|
14
|
+
id uuid primary key default gen_random_uuid(),
|
|
15
|
+
user_id uuid not null references users(id) on delete cascade,
|
|
16
|
+
created_at timestamptz not null default now()
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
create index if not exists agent_drafts_user_recent on agent_drafts (user_id, created_at desc);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@profullstack/agenticjobs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "An agent-friendly job board you self-host. It posts its own jobs, never scrapes anyone else's, and answers on every surface: web, API, MCP, CLI, TUI, desktop and PWA. Instances find each other through an open directory.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|