\usemodule[bib]

\unprotect

\newif\iffirstcitedpageref
\def\showcitedpagerefs#1%
  {\iffirstcitedpageref \firstcitedpagereffalse\else, \fi
   \at[#1]}

\def\citedpages[#1]%
  {\gdef\pagerefs{}%
   \firstcitedpagereftrue
   \doloop
     {\doifdefinedelse
        {\r!cross cite-\jobname-\recurselevel}
        {\doifreferencefoundelse
           {cite-\jobname-\recurselevel}
           {\doifsamestringelse
            {#1}
            {\currenttextreference}
            {\addtocommalist{cite-\jobname-\recurselevel}\pagerefs}
            {}}%
           {}}
        {\exitloop}}%
    \message{\pagerefs}
    \doifemptyelse{\pagerefs}
      {}
      {Cited at: \processcommacommand[\pagerefs]\showcitedpagerefs}}%
\protect

\startpublication[k=austin,t=book,a=Austin,y=1975]
\author[]{John}[]{}{Austin}
\pubyear{1975}
\title{How To Do Things with Words}
\note{\citedpages[austin]}
\stoppublication

\starttext

As can be seen in \cite[austin].

\page

\dorecurse{10}{\input knuth \page}

As can be seen in \cite[austin].

\placepublications

\stoptext
